home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TeX 1995 July
/
TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO
/
macros
/
physe
/
physe.doc
(
.txt
)
< prev
next >
Wrap
Texinfo Document
|
1992-08-26
|
111KB
|
2,370 lines
%Changes by lde
% changed .texindex extension to .index
% set IBMfalse
%FORMAT physe % use PHYSE format
%*** this is file PMANUAL as of 07.03.86 ***
% \input themac
%*** this is file THEMAC as of 11.02.86 ***
% \input mppmac % get MPP macros
%*** this is file MPPMAC as of 17.03.86 ***
\input physupdt % get updates and corrections to PHYS-TeX
\def\wlog#1{} % suppress allocation messages
\catcode`\@=11
%\def\jobname{pmanual}
%*** additional macros for MPP ***
%*** (Max-Planck-Institut fuer Physik und Astrophysik) ***
%*** (Werner-Heisenberg-Institut fuer Physik) ***
\def\mppaddresstext{Postfach 40 12 12, D-8000 M\"unchen 40\else
P.O.Box 40 12 12, Munich (Fed.~Rep.~Germany)}
\def\mppaddress{\address
{Max-Planck-Institut f\"ur Physik und Astrophysik%
\\-- Werner-Heisenberg-Institut f\"ur Physik --%
\\\case@language\mppaddresstext}}
\def\mppnum#1{\topright{MPI--PAE/#1}}
%*** mpp letterhead ***
\font\fourtenbf=\font@sel ssbx10 scaled \magstep2 % for letterhead
\font\sixtenbf=\font@sel ssbx10 at 16.587 pt % for letterhead
% (LasergrafiX)
\font\seventenbf=\font@sel ssbx10 scaled \magstep3 % for letterhead
% (Canon)
\def\mppae@text{MAX-PLANCK-INSTITUT F\"UR PHYSIK UND ASTROPHYSIK}
\def\letterC{\endpage \vglue-19mm\centerline{\seventenbf
\mppae@text}\l@tt@r} % for output on canon
\def\letterL{\endpage \vglue-26mm\centerline{\sixtenbf
\mppae@text}\l@tt@r} % for output on lasergrafix
\let\letter=\letterL % default is lasergrafix
\def\l@tt@r#1#2#3{\centerline{\fourtenbf
WERNER-HEISENBERG-INSTITUT F\"UR PHYSIK}%
\skippagenum T\skipheadline T\skipfootline T%
\centerline{\strut#1}\vskip.5cm%
\line{\vtop to5cm{\lftline{\strut}\vfil
\let\\\cr \halign{\strut##\hfil\cr#3\cr}\vfil}%
\hss\vtop to5cm{\def\lftline##1{\hbox to 5cm{##1\hfil}}%
\lftline{\strut}\eightrm \setbaselineskip=12pt \vfil
\lftline{F\"OHRINGER RING 6}\lftline{\tenrm D-8000 M\"UNCHEN 40}%
\lftline{\case@language{TELEFON\else PHONE}: (089) 31 893
\if!#2!\else - #2 \case@language{oder\else or} \fi-1}%
\lftline{TELEGRAMM:}\lftline{PHYSASTROPLANCK M\"UNCHEN}%
\lftline{TELEX: 52 15 61 9 mppa d}%
\lftline{POSTFACH 40 12 12}\vfil}}%
\vskip1cm\rtline{\thedate}\vskip 1cm plus 1cm minus.5cm}
\def\wlog{\immediate\write\m@ne} % restore PLAIN's definition
\catcode`\@=12 % @ signs are no longer letters
%*** end of file MPPMAC ***
\def\wlog#1{} % suppress allocation messages
\catcode`\@=11
\outer\def\pthnum#1{\mppnum{PTh #1}}
\let\pthdate=\pubdate
\def\wlog{\immediate\write\m@ne} % restore PLAIN's definition
\catcode`\@=12 % @ signs are no longer letters
%*** additional physics journals ***
\def\AP{\journal{Ann.\ \Phys}}
\def\CMP{\journal{Commun.\ \Math\Phys}}
\def\JMP{\journal{J.\ \Math\Phys}}
\def\PRep{\journal{\Phys Rep.\ }}
\def\RMP{\journal{\Rev Mod.\ \Phys}}
\def\TMF{\journal{Teor.\ Mat.\ Fiz.\ }}
%*** end of file THEMAC ***
% \input pmanmac
%*** this is file PMANMAC as of 06.03.86 ***
\catcode`\@=11
\newif\ifIBM
%\IBMtrue % print the character ^ as `neg' (as on IBM terminals)
\IBMfalse % print the character ^ as `hat' (as in the TeXbook)
\hyphenchar\twelvett=-1 \hyphenchar\tentt=-1
\hyphenchar\eighttt=-1 % prevent hyphenation inside verbatim
\newinsert\margin
\dimen\margin=\maxdimen % no limit on the number of marginal notes
\count\margin=0 \skip\margin=0pt % marginal notes take up no space
\def\skip@userexit{\setbox\z@\box\@cclv \setbox\z@\box\margin}
\def\ship@userexit{\ifvbox\margin \nointerlineskip
\rlap{\hskip\hsize \hskip6pt\vbox to\z@{\kern4\p@ \box\margin \vss
}}\fi \unvbox\@cclv}
\let\skipuserexit=\skip@userexit
\let\shipuserexit=\ship@userexit
\newif\ifmultic@lumn \newcount\numc@lumn \newdimen\c@lumnwidth
\newbox\partialp@ge \newdimen\p@gewidth \newdimen\p@geheight
\let\multicolumn=\relax
\outer\def\singlecolumn{\ifmultic@lumn \singlec@lumn \bigskip \fi}
\outer\def\doublecolumn{\multicolumn\tw@}
\outer\def\triplecolumn{\multicolumn\thr@@}
\outer\def\multicolumn{\ifmultic@lumn \singlec@lumn \fi \multic@lumn}
\def\singlec@lumn{\output{\balancec@lumns}\eject
\endgroup \pagegoal\vsize}
\def\multic@lumn{\begingroup \multic@lumntrue
\afterassignment\multic@l@mn \numc@lumn=}
\def\multic@l@mn{\output{\global\setbox\partialp@ge
\vbox{\unvbox\@cclv\bigskip}}\eject
\p@gewidth\hsize \p@geheight\vsize \advance\hsize12\p@
\divide\hsize\numc@lumn \advance\hsize-12\p@ \c@lumnwidth\hsize
\multiply\vsize\numc@lumn \advance\vsize12\p@
\let\skipuserexit\skipsofar \let\shipuserexit\shipsofar
\output{\multic@lumnout}}
\def\multic@lumnout{\splittopskip\topskip \splitmaxdepth\maxdepth
\dimen@\p@geheight \advance\dimen@-\ht\partialp@ge
\setbox\tw@\hbox{\count@\@ne \loop \setbox\z@\vsplit\@cclv to\dimen@
\wd\z@\c@lumnwidth \box\z@ \hfil \advance\count@\@ne
\ifnum\count@<\numc@lumn \repeat}%
\setbox\f@ur\vsplit\@cclv to\dimen@
\bgroup \hsize\p@gewidth \vsize\p@geheight \physoutput \egroup
\unvbox\@cclv \penalty\outputpenalty}
\def\skipsofar{\setbox\z@\box\partialp@ge}
\def\shipsofar{\unvbox\partialp@ge
\hbox to\p@gewidth{\unhbox\tw@ \wd\f@ur\c@lumnwidth \box\f@ur}}
\def\balancec@lumns{\setbox\z@\vbox{\unvbox\@cclv}\splittopskip\topskip
\dimen@-\topskip \advance\dimen@\baselineskip
\advance\dimen@-\numc@lumn\dimen@
\advance\dimen@\ht\z@ \divide\dimen@\numc@lumn
{\vbadness\@M \loop \global\setbox\thr@@\copy\z@
\global\setbox\@ne\hbox{\count@\@ne \loop
\setbox\z@\vsplit\thr@@ to\dimen@
\setbox\z@\vbox to\dimen@{\unvbox\z@}\wd\z@\c@lumnwidth \box\z@
\hfil \advance\count@\@ne \ifnum\count@<\numc@lumn \repeat}%
\ifdim\ht\thr@@>\dimen@ \global\advance\dimen@\p@ \repeat}%
\setbox\tw@\box\@ne \setbox\f@ur\vbox to\dimen@{\unvbox\thr@@}%
\shipsofar}
\def\AmSTeX{$\cal A\kern-.1667em\lower.5ex\hbox{$\cal M$}\kern-.125em
S$-\TeX}
\def\bull{\vrule height .9ex width.8ex depth -.1ex } % square bullet
\def\dn{\leavevmode\hbox{\tt\char'14}} % downward arrow
\def\up{\leavevmode\hbox{\tt\char'13}} % upward arrow
\def\|{\leavevmode\hbox{\tt\char`\|}} % vertical line
\def\vspace{\leavevmode\hbox{\tt\char`\ }} % visible space
\def\pt{\,{\rm pt}} % units of points
\def\<#1>{\leavevmode\hbox{$\langle$#1\/$\rangle$}} % syntactic quantity
\def\oct#1{\hbox{\rm\'{}\kern-.2em\it#1\/\kern.05em}} % octal constant
\def\hex#1{\hbox{\rm\H{}\tt#1}} % hexadecimal constant
\def\cstok#1{\leavevmode\thinspace\hbox{\vrule\vtop{\vbox{\hrule\kern1pt
\hbox{\vphantom{\tt/}\thinspace{\tt#1}\thinspace}}%
\kern1pt\hrule}\vrule}\thinspace} % control sequence token
\outer\def\begindisplay{\obeylines\startdisplay}
{\obeylines\gdef\startdisplay#1
{\catcode`\^^M=5$$#1\halign\bgroup\indent##\hfil&&\qquad##\hfil\cr}}
\outer\def\enddisplay{\crcr\egroup$$}
{\catcode`\^=\active
\gdef\ttverbatim{\begingroup \catcode`\\\@ther \catcode`\{\@ther
\catcode`\}\@ther \catcode`\$\@ther \catcode`\&\@ther
\catcode`\#\@ther \catcode`\%\@ther \catcode`\~\@ther
\catcode`\_\@ther \catcode`\`\active
\ifIBM \catcode`\^\active \let^\tt@neg \else \catcode`\^\@ther \fi
\obeyspaces \obeylines \tt}}
{\catcode`\`=\active \gdef`{\relax\lq}}
\def\tt@neg{\hbox to.5em{\hss\the\scriptfont2:\hss}}
{\obeyspaces\gdef {\ }} % \obeyspaces now gives \ , not \space
\outer\def\begintt{\strut \begingroup
\abovedisplayskip\parskip \abovedisplayshortskip\abovedisplayskip
\belowdisplayskip\parskip \belowdisplayshortskip\belowdisplayskip
$$\let\par=\endgraf \ttverbatim \parskip0pt
\catcode`\|=0 \rightskip=-5pc \tt@finish}
\outer\def\beginttlines{\begingroup\tenpoint
\let\par=\cr \ttverbatim \catcode`\|=0
\ifhmode \strut \expandafter\vadjust\fi \bgroup \ttlines@finish}
{\catcode`\|=0 |catcode`|\=\@ther % | is temporary escape character
|obeylines % end of line is active
|gdef|tt@finish#1^^M#2\endtt{#1|vbox{|strut#2}|endgroup %
$$|endgroup |ignorespaces} %
|gdef|ttlines@finish#1^^M#2\endttlines{#1|halign %
{|hbox{|strut|quad *|quad##|hfil}|crcr#2|crcr}|egroup %
|ifhmode |lb |fi |endgroup |endgroup |ignorespaces}}
\catcode`\|=\active
{\obeylines
\gdef|{\ttverbatim\ttglue\let^^M=\ \let|=\endgroup}
\gdef\utt|{\setbox\z@\hbox\bgroup|\aftergroup\utt@end}
\def\utt@end{\egroup$\underline{\box\z@}$}
\def\ttglue{\spaceskip=.5em plus.25em minus.15em}
\def\beginlines{\par\begingroup\nobreak\medskip\parindent\z@
\parskip\z@ \hrule\kern1pt\nobreak \obeylines \everypar{\strut}}
\def\endlines{\kern1pt\hrule\endgroup\medbreak\noindent}
\newwrite\inx
\immediate\openout\inx=\jobname.index % file for index remainders
\def\marginstyle{\eightrm % marginal notes are in 8pt
\vrule height9pt depth3pt width0pt } % a strut for \insert\margin
\newif\ifsilent
\def\specialhat{\ifmmode \expandafter^\else \expandafter\beginxref\fi}
\def\beginxref{\futurelet\n@xt\beginxrefswitch}
\def\beginxrefswitch{\ifx\n@xt\specialhat \expandafter\silentxref\else
\silentfalse \expandafter\xref\fi}
\catcode`\^=\active \let ^=\specialhat
\def\silentxref^{\silenttrue\xref}
\begingroup \lccode`\*=`\\ \lowercase{\gdef\bslash{*}} \endgroup
\def\xref{\futurelet\n@xt\xrefswitch} % branch on the next character
\def\xrefswitch{\begingroup\ifx\n@xt|\aftergroup\vxref
\else \begingroup \ifx\n@xt\<\aftergroup\anglexref
\else\aftergroup\normalxref \fi\fi \endgroup}
\def\vxref|{\ttverbatim \futurelet\n@xt\vxrefswitch}
\def\vxrefswitch#1|{\vxref@switch#1@@\@}
{\lccode`\~=`\` \lccode`\?=`\^ \lccode`\+=`\\ \lowercase{
\gdef\vxref@switch#1#2@#3\@{\if\bslash\noexpand\n@xt
\def\xreftype{2}\def\text{\bslash#2}% code 2, |\arg|
\else\def\xreftype{1}\def\text{#1#2}\fi % code 1, |arg|
\bgroup \def^{?}\def~{`}\let\bslash\empty % for write
\makexref}
\gdef\normalxref#1{\def\xreftype{0}\def\text{#1}%
\bgroup \def\tt{+tt}\def\^{+?}% for write
\makexref}
\def\anglexref\<#1>{\def\xreftype{3}\def\text{\<#1>}% code 3, \<arg>
\bgroup \def\text{#1}% for write
\makexref}
\newif\ifproofmode
\proofmodefalse % for camera-ready copy
%\proofmodetrue % this should be false when making camera-ready copy
\def\makexref{\ifproofmode \insert\margin{\hbox{\marginstyle\text}}%
\xdef\writeit{\write\inx{\text\space!\xreftype\space
\noexpand\number\pageno.}}\writeit
\else\ifhmode\kern0pt \fi\fi
\ifsilent \egroup \endgroup \ignorespaces \else
\egroup \text \endgroup \fi}
\outer\def\startindex{\superendpage
\he@d{\strut\case@language\indextext}%
\toc{\case@language\indextext}{\unskip}}
\def\indextext{Stichwortverzeichnis\else Index}
\outer\def\makeindex{\openin\test@read=pmanual.index
\ifeof\test@read \message{* file pmanual.index missing *}\else
\closein\test@read \expandafter\make@index\fi}
\def\make@index{\beginindex \input pmanual.index \endindex }
\let\endindex=\endgroup \let\sub=\indent
\def\beginindex{\begingroup \maxdepth\maxdimen
\def\par{\endgraf \futurelet\n@xt\inxentry}\obeylines
\everypar{\hangindent\tw@\parindent}\exhyphenpenalty\@M
\parindent1em\raggedright}
\def\inxentry{\ifx\n@xt\endindex \else \noindent \fi}
\catcode`\@=12 % @ signs are no longer letters
%*** end of file PMANMAC ***
%\IBMtrue % print the character ^ as `neg' (as on IBM terminals)
\IBMfalse % print the character ^ as `hat' (as in the TeXbook)
\tolerance=1000
\def\chapuserexit{\wlog{\expandafter\empty\the\toks0
\space\the\toks2}}
\def\secsssuserexit{\expandafter\myuserexit\the\toks0 }
\def\myuserexit#1.{\wlog{#1: \the\toks2}\toks0{#1}}
%\pagesel{39}{99} % print selected pages only
\english
\chapters \chappage
\pageall \toppagenum
\althead
\lheadtext={The PHYS-{\TeX} Manual}
\rheadtext={P. Breitenlohner, A. Kabelschacht and R.J. Drofnats}
\centfoot
\lfoottext={\thetime} \rfoottext={\thedate}
\equleft \equsect \equshort
\figchap
\tabchap
\refsqb
\tocsect
\footpar \footbot \let\footstyle=\tenpoint
% \input pmantitp % title page
%*** this is file PMANTITP as of 07.03.86 ***
\submit{Journal ???}
\mppnum{PTh xx/86}
\topright{Version 1.0}
\pubdate{March 1986}
\title{The PHYS-{\TeX} Manual}
\titcon{How to use the {\TeX} formats PHYSE and PHYS
\rm\footnote
*{This output is produced from the file PMANUAL TEX.
Here you could add things like the phrase: Talk given at {\dots} or
similar.}}
\author{P. Breitenlohner\\A. Kabelschacht}
\mppaddress
\autcon{R.J. Drofnats}
\address{Dept.~of Farm Ecology, The University of St.~Anford\\%
P.O.Box 1009, Haga Alto, CA 94321 (USA)}
\abstract{This manual describes how to use the {\TeX} formats PHYSE
and PHYS to write physics papers.
These formats contain MACROS which will automatically number
chapters, sections, \dots, appendices, pages, footnotes, equations,
figures, references and tables.
In addition lists of all figure captions, table captions, references
as well as a table of contents can be generated.}
\endpage
\startpage-2
\null\vskip3in
\centerline{\it This page intentionally left blank}
\vskip3in
\endpage
%*** end of file PMANTITP ***
\startpage1 % leave room for toc on pages iii and iv
% \input pmanintr % introduction
%*** this is file PMANINTR as of 08.03.86 ***
\chap{Introduction}
The {\TeX} formats PHYSE and PHYS are extensions of the PLAIN format
and should simplify the writing of physics papers.
They differ from eachother by the use of english
or german hyphenation patterns ^^{hyphenation, german and english}
and by having ^|\english| or ^|\german| as default.
Practically all features of PLAIN-{\TeX} as described in the
\TeX book \RF{\texbook}{{\it The \TeX book}, Donald E.~Knuth,
Addison-Wesley, 1984.}\quref{\texbook} can be used without any change.
The only exception is that PLAIN's ^|\item| has been renamed
to ^|\plainitem|.
The PHYSE and PHYS formats have been developed at the
Max-Planck-Institut f\"ur Physik, M\"unchen, and are derived from
the macros for physics papers used at SLAC\null.
These formats exist as dump files which can be
invoked in the same way as PLAINE or PLAIN\null.
Your input should start with the command |\input|~^|physupdt|
(compare appendix B for details).
\ifIBM % print this paragraph if ^ is represented as `neg'
The character for superscripts (^{{\tt\char`\^}} in the
{\TeX}book) is printed as ^|^| in this manual, in the same way as it
appears on IBM terminals.\fi
%*** end of file PMANINTR ***
% \input pmanfont % fonts, text sizes, styles and headings
%*** this is file PMANFONT as of 06.03.86 ***
\chap{Fonts, Text Sizes, Styles and Headings}
\sect{Text Sizes and Spacing}
You can produce text in various ^{sizes}.
If you use the command ^|\twelvepoint| (which is the default) at the
begin of your input file, everything will be \LARGE{\bf large}
i.e.\ normal text and equations will be in 12\pt, subscripts
and superscripts in 10{\pt} and sub-subscripts etc.\ in 8{\pt} size.
If you use ^|\tenpoint| you get \MEDIUM{\bf medium} size
(10\pt, 8{\pt} and 6\pt) and if you use ^|\eightpoint| you get
\SMALL{\bf small} size (8\pt, 6{\pt} and 5\pt).
Independently you can specify ^^{spacing} ^|\singlespace|,
^|\doublespace| (the default) or ^|\triplespace| to obtain narrow,
medium or wide space between consecutive lines of text
(^|\baselineskip|); other spacing parameters are set accordingly.
Each time you select a size or spacing the ^|\strut| is suitably
redefind.
The combination |\twelvepoint\triplespace| should about satisfy
{\it Phys.~Rev.}'s requirements.
You can use |\medium{text}| or |\MEDIUM{text}| to get `text' in
{\bf medium} size.
The difference is that ^|\medium| puts `text' into
one or several separate paragraphs whereas ^|\MEDIUM| puts `text'
into the middle of the current paragraph.
The commands ^|\large|, ^|\LARGE|, ^|\small| and ^|\SMALL|
can be used in exactly the same way.
Finally we add a displayed equation:
$$\smallint_0^\infty e^{-x^2} dx = {\sqrt{\pi}\over 2}\qquad\qquad
\smallprod_{i=1}^n e^{x_i}=e^{\smallsum_{i=1}^n x_i}\eqn$$
to see the size of superscripts and super-superscripts.
\medium{\singlespace This paragraph in {\bf medium} size starts with
|\medium{\singlespace This|\dots\space
and uses |\LARGE| and |\SMALL| to get a \LARGE{large} and a
\SMALL{small} word in the middle.
Now we add a very long sentence so that we can see the effect of
the large word on the interline spacing (if any).
Again we add a displayed equation:
$$\smallint_0^\infty e^{-x^2} dx = {\sqrt{\pi}\over 2}\qquad\qquad
\smallprod_{i=1}^n e^{x_i}=e^{\smallsum_{i=1}^n x_i}\eqn$$
to see the size of superscripts and super-superscripts.}
\small{\singlespace This paragraph in {\bf small} size starts with
|\small{\singlespace This|\dots\space
and, after the first line which is entirely in small type,
uses |\LARGE| and |\MEDIUM| to get a \LARGE{large} and a
\MEDIUM{medium} word in the middle.
Again we add a very long sentence in order to see the effect
of the large and the medium word on the interline spacing.
Again we add a displayed equation:
$$\smallint_0^\infty e^{-x^2} dx = {\sqrt{\pi}\over 2}\qquad\qquad
\smallprod_{i=1}^n e^{x_i}=e^{\smallsum_{i=1}^n x_i}\eqn$$
to see the size of superscripts and super-superscripts.}
\sect{Fonts}
For each size there are several `^{fonts}' available, i.e.\ sets of
characters of different shape.
Normally text is typed in `roman' and equations are typed in
`math italic'.
You can choose among:\lb
^|\rm| for {\rm roman}\lb
|$|\dots|$| (or |\mit| inside equations) for $math\; italic$\lb
^|\cal| for $\cal CALIGRAPHIC$ (inside equations and for capitals
only)\lb
^|\it| for {\it text italic}\lb
^|\sl| for {\sl slanted}\lb
^|\bf| for {\bf bold}\lb
^|\tt| for {\tt typewriter}\lb
^|\caps| for {\caps Large and Small Capitals}\lb
but not all fonts are available in all sizes.
\sect{Styles} ^^{styles}
There are macros which determine how various things are printed
(e.g.\ page numbers, headings, titles and so on).
The are listed below and can be changed as necessary.
%*** the following lines are copied from PHYSTEXT ***
\beginttlines
\let\headlinestyle=\twelverm
\let\footlinestyle=\twelverm
\let\pagestyle=\twelverm % page numbers
\let\titlestyle=\bf % title of paper, chapters, appendices
\let\authorstyle=\caps
\let\addressstyle=\sl
\let\sectstyle=\caps % section titles
\def\secsstyle{\sectstyle}
\def\secssstyle{\secsstyle}
\def\secsssstyle{\secssstyle}
\def\subsecstyle#1{\hbox{$\underline{\hbox{#1}}$\enskip}\ignorespaces}
\let\headstyle=\UPPERCASE % headlines for list of figure capts. etc
\let\captionstyle=\it % figure and table captions
\let\journalstyle=\sl
\let\volumestyle=\bf
\let\figstyle=\empty % list of figure captions
\def\figindent{to4em}
\def\figbreak{\goodbreak \vskip\refbetweenskip}
\let\tabstyle=\empty % list of table captions
\let\tabindent=\figindent
\let\tabbreak=\figbreak
\let\refstyle=\empty % list of references
\let\refindent=\figindent
\def\namrefindent{2em}
\def\refbreak{\filbreak \vskip\refbetweenskip}
\let\tocstyle=\empty % table of contents
\let\tocindent=\empty
\let\tocbreak=\refbreak
\let\footstyle=\empty % (list of) footnotes
\let\footindent=\figindent
\let\footbreak=\figbreak
\let\stmttitlestyle=\bf % mathematical statements
\let\stmtstyle=\sl
\let\prftitlestyle=\caps
\let\prfstyle=\sl
\endttlines
The command |\UPPERCASE| translates it's argument to uppercase
(as does |\uppercase|) but all macros in the argument are
expanded before the translation.
The definition is
\beginttlines
\def\UPPERCASE#1{\edef\next{#1}\uppercase\expandafter{\next}}
\endttlines
\sect{Headings}
^^{headings}The text of most headings is defined by macros which
are listed below (\<german text>|\else|\<english text>),
and which can be easily changed.
%*** the following lines are copied from PHYSTEXT ***
\beginttlines
\def\submittextone{Zur Ver\"offentlichung in\else Submitted to}
\def\submittexttwo{ eingereicht\else}
\def\abstracthead{Zusammenfassung\else Abstract}
\def\ackhead{Danksagung\else Acknowledgements}
\def\appendixhead{Anhang\else Appendix}
\def\eqabbr{Gl\else eq}
\def\eqsabbr{Gln\else eqs}
\def\figpref{Abb\else Fig}
\def\fighead{Abbildungen\else Figure captions}
\def\figabbr{Bild\nodot\else Fig}
\def\tabpref{Tab\else Tab}
\def\tabhead{Tabellen\else Table captions}
\let\tababbr=\tabpref
\def\refpref{Lit\else Ref}
\def\refhead{Literaturverzeichnis\else References}
\def\refabbr{???\else Ref}
\def\refsabbr{????\else Refs}
\def\tocpref{Inh\else Toc}
\def\tochead{Inhaltsverzeichnis\else Table of contents}
\def\footpref{Anm\else Foot}
\def\foothead{Anmerkungen\else Footnotes}
\def\prfhead{Beweis\else Proof}
\endttlines
%*** end of file PMANFONT ***
% \input pmanpage % page numbers
%*** this is file PMANPAGE as of 07.03.86 ***
\chap{Page Numbers, Head- and Footlines}
\sect{Page Numbers}
^^{page numbers}
If you use ^|\pageall| (default) the pages are numbered throughout
the paper, starting with `1' for the ^{title page}.
If you use ^|\pagechap| the title page is page~0 and the pages are
numbered separately for each chapter, appendix, the figure captions,
the table captions, the list of references, the table of contents
and (if applicable) the footnotes, with the number of the chapter or
similar as prefix.
The page number of the title page will never be printed and with
|\pagechap| the same is true for the first page of figure captions,
table captions etc.
You can use\lb
^|\toppagenum| to get page numbers on top of each page,\lb
^|\botpagenum| (default) to get page numbers at the bottom of each page
or\lb
^|\nopagenum| to supress the printing of page numbers.
\sect{Head- and Footlines}
^^{headlines}^^{footlines}
Independently from the page numbers there may be running head- and
footlines.
You can specify specify a left head line text with
^|\lheadtext||={|\dots|}| and similarly a right head line text
(^|\rheadtext|) and a ^|\cheadtext| as well as foot line texts
(^|\lfoottext|, ^|\rfoottext| and ^|\cfoottext|).
All these texts are initially empty.
If you choose the option ^|\centhead| (default) the headline
will contain the |\lheadtext| in the left corner, the |\rheadtext|
in the right corner and a page number or blank in the center.
With the option ^|\righthead| the |\rheadtext| is centered,
the ^|\cheadtext| in the left corner and a page number will be in
the right corner; with the option ^|\lefthead| you get the same
with left and right exchanged.
With the option ^|\althead| you get alternatingly the result from
|\righthead| on the odd numbered (right) pages and from |\lefthead|
on the even numbered (left) pages.
The options ^|\centfoot| (default), ^|\rightfoot|, ^|\leftfoot| and
^|\altfoot| will do the same for the footlines.
You can use the command ^|\skippagenum||=T| to suppress the printing
of a page number on the current page.
Similarly ^|\skipheadline||=T| and ^|\skipfootline||=T| will suppress
the printing of the entire headline and footline.
All three commands are used automatically on the title page and all
three switches are automatically reset to `|F|' when a new page is
started.
You should, however, be careful where to put these commands because
{\TeX} may have different ideas about what is the current page than
you do (see chapter~15: How {\TeX} Makes Lines into Pages in the
{\TeX}book for details).
\sect{Portrait and Landscape Format}
{\TeX} usually produces output in `portrait' format (|\vsize| is larger
than |\hsize|).
Some times you may want to use `landscape' format, i.e.\ for large
tables.
You can use the commands ^|\portrait| (default) and ^|\landscape| to
switch between portrait and landscape format.
If such a switch occurs any partial page accumulated so far will be
terminated and then the values for |\hsize| and |\vsize| will be
interchanged and adjusted for the presence of head- and footlines.
It is, therefore, \underbar{not} possible to use a |\pageinsert| in
landscape format while processing a page in portrait format.
\subsec{Warning:}Some output devices may not be able to handle
landscape format properly or they may not be able to handle a
mixture of both formats.
%*** end of file PMANPAGE ***
% \input pmantitl % the title page
%*** this is file PMANTITL as of 07.03.86 ***
\chap{The Title Page}
There are several macros to facilitate the production of a ^{title
page}.
These macros provide vertical spacing which should normally give a
reasonable layout.
You should use ^|\titlepage| (default) or ^|\notitlepage| if the title
of the paper, the name(s) and address(es) of author(s) and possibly
the abstract do or don't appear on a separate page which is
terminated with |\endpage|.
You can use ^|\topleft| and ^|\topright| as often as needed to
collect information to appear on the top left and top right corners
of the title page.
This information is stored in boxes and is printed with the (first)
use of ^|\title|.
The command ^|\submit||{...}| uses topleft to produce the two
lines `Submitted~to' and `\dots' in the top left corner,\lb
^|\mppnum||{...}| is equivalent to |\topright{MPI--PAE/...}|,
\lb and ^|\pubdate| is a synonym for |\topright|.
You can use ^|\title||{...}| to print (the first line of) the title
of the paper and ^|\titcon||{...}| for continuation lines.
The command ^|\author||{...}| will print one or more lines with
authors, ^|\\| indicates the start of a new line,
^|\autcon||{...}| will print `and' or `und' and more authors.
You can use the commands |\author|, |\autcon| and
|\address| as often as required.
Any of the above macros may use ^|\foot| or ^|\footnote|,
but you should surround the footnote with
|{|^|\rm|~|...}|, otherwise the footnote will be printed in the
current font.
The command ^|\address||{...}| prints the address of the
institution with one or more lines which are again separated by ^|\\|.
The command ^|\mppaddress| prints the address of the
Max-Planck-Institut f\"ur Physik.
The command ^|\abstract||{...}| prints the english heading
`^{Abstract}' or the german one `^{Zusammenfassung}' and the text of
the abstract which may consist of several paragraphs.
Finally we want to mention one command which does not belong to the
title page: ^|\ack| prints the heading `^{Acknowledgements}' or
`^{Danksagung}'.
The title page of this manual is produced by the following
sequence of commands:
%*** the following lines are copied from PMANTITP ***
\beginttlines
\submit{Journal ???}
\mppnum{PTh xx/86}
\topright{Version 1.0}
\pubdate{March 1986}
\title{The PHYS-{\TeX} Manual}
\titcon{How to use the {\TeX} formats PHYSE and PHYS
\rm\footnote
*{This output is produced from the file PMANUAL TEX.
Here you could add things like the phrase: Talk given at {\dots} or
similar.}}
\author{P. Breitenlohner\\A. Kabelschacht}
\mppaddress
\autcon{R.J. Drofnats}
\address{Dept.~of Farm Ecology, The University of St.~Anford\\%
P.O.Box 1009, Haga Alto, CA 94321 (USA)}
\abstract{This manual describes ...
.... can be generated.}
\endpage
\endttlines
%*** end of file PMANTITL ***
% \input pmanchap % structuring the text
%*** this is file PMANCHAP as of 10.03.86 ***
\chap{Structuring the Text}
\sect{Chapters and Sections}
You can use ^|\chap| to start a new ^{chapter} and ^|\appendix|
to start a new ^{appendix}.
Chapters and appendices will be numbered automatically, starting with
`1' resp.\ `A'\null.
Chapters and appendices can appear in any order but this may be of
little use unless you choose the option ^|\pagechap|.
The text before the first chapter or appendix is treated as chapter~0.
At the begin of your input you should use the command ^|\chapters|
(default) or ^|\nochapters| if your paper does or does not contain
chapters.
If you choose |\chapters| the chapter number will appear as
prefix in section numbers and possibly (depending on other options)
in page numbers, equation numbers, etc.
If you choose |\nochapters| this prefix will be omitted.
In this case you can not use |\chap| to start a new chapter.
You can use ^|\arabicchapnum| (default) or ^|\romanchapnum| to get
arabic chapter numbers or (uppercase) roman numerals resp., both in
the chapter titles and in the prefix of e.g.\ ^{equation numbers}.
Whithin a chapter, but not within an appendix, you may use
^|\sect| to start a ^{section}.
They will again be numbered, starting with `1', and the text before
the first section within a chapter will be treated as section~0.
You can use ^|\chappage| or ^|\nochappage| (default) to indicate that
each chapter and appendix should or should not start on a new page.
{\TeX} will try not to begin a chapter or section to low at a page,
it will rather leave blank space and start with the chapter or
section title on a new page.
This mechanism is governed by the parameters\lb
^|\chapstretch| (default `2.5 cm'),\lb
^|\chappenalty| (default `-800'),\lb
^|\sectstretch| (default `2 cm') and\lb
^|\sectpenalty| (default `-400')\lb
and has the additional advantage that a minor change in the
text will quite often lead to identical page breaks after a few
pages which have changed.
Depending on the choice of other options ^|\chap|, ^|\sect| and
^|\appendix| may influence the numbering of pages, equations,
figures and tables.
Within a section or an appendix you can use ^|\secs| to start a
numbered subsection and so on down to ^^|\secss| ^|\secsss| for
sub-sub-subsections.
All four commands used to generate numbered (sub-)sections will
generate the (sub-)section numbers automatically.
You can, however, specify your own numbers by using e.g.\lb
|\sect|^\<number>|{|\<title>|}|
In addition you can use ^|\subsec| to generate an unnumbered
subsection.
You can use |\subsec| everywhere in your text, in appendices as well
as in chapters.
\subsec{Examples:}The present chapter was started with the commands\lb
|\chap{Structuring the Text}|\lb
|\sect{Chapters and sections}|\lb
If you need a continuation line for the chapter title use\lb
|\titcon{continuation of the title}|\lb
as often as needed.
The titles for (sub-)sections will automatically occupy as many
lines as needed.
The unnumbered subsection with these examples starts with\lb
|\subsec{Examples:}The|\dots\foot{The lack of space between `|}|'
and `|The|' in this and similar constructions is significant!}\lb
If you want to start an appendix
you can either use |\appendix| for an appendix without a title
or |\appendix{Title}| for an appendix with a title.
In the former case the text of the appendix must not start with
an explicit or implicit
`|{|' (you could e.g.\ start the text of the appendix with |\relax|
which instructs {\TeX} to `do nothing').
You can use ^|\app||{|\dots|}| to start an unnumbered appendix.
This command will just print the heading `Appendix \dots' (using
^|\headstyle|) but will not influence the numbering of equations
or similar.
\sect{Items and Points} ^^{item}^^{point}
There is another quite different way to structure the text.
You may want to list several important points and either number them
or mark them by a symbol.
There are three levels to do that: ^|\item|s are indented 2.5 em,
^|\sitem|s (subitems) are indented 4.5 em and
^|\ssitems|s (sub-subitems) are indented 6.5 em (an `em' is the width
of a `quad' in the current font).
Each item, sitem or ssitem ends with the end of
the paragraph (^|\par| or a ^{blank line}).
\item{x}This item was started with |\item{x}This|\dots\lb
You could also use\lb
^|\bullitem|~|This|\dots or ^|\staritem|~|This|\dots or
^|\dashitem|~|This|\dots\lb
to get an item marked by `$\bullet$', `$\ast$' or `---' instead of the
`x'.\lb
Similarly there are ^|\sbullitem|, ^|\sstaritem| and ^|\sdashitem| for
sitems as well as ^|\ssbullitem|, ^|\ssstaritem| and ^|\ssdashitem|
for ssitems.
\sitem{y}This sitem was started with |\sitem{y}This|\dots\lb
and this works just the same way for ssitems:
\ssitem{z}This is a sub-subitem.
\itemcon We now want to continue the item with a new paragraph and in
order to do so we had to start the present paragraph with
^|\itemcon|~|We|\dots\lb
For sitem use the analogous command ^|\sitemcon| and for
ssitem you can use ^|\ssitemcon|.
\noindent
A ^{point} is an item which is numbered automatically and similarly
for an spoint and an sspoint.
\pointbegin This is the first point of a list and was therefore
started with\lb
^|\pointbegin|~|This|\dots\lb
in order to initialize the numbering.
\point This is the next point which was started with the command\lb
^|\point|~|This|\dots\lb
You can add another paragraph to a point by using either
^|\pointcon| or ^|\itemcon|.
The commands ^|\spointbegin|, ^|\spoint| and ^|\spointcon|
are used to generate spoint,
the commands ^|\sspointbegin|, ^|\sspoint| and ^|\sspointcon|
are used to generate sspoints,
they work in exactly the same way but differ in the numbering
and in the amount of indentation.
\spointbegin The first spoint of a list
\spoint The second spoint of the list
\sspointbegin The first sspoint of a list
\sspoint The second sspoint of the list
\noindent An spoint may but need not appear within a point.
In order to have no paragraph indentation, this paragraph was started
with ^|\noindent| which is a good idea after a list of
items or points.
In fact ((sub-)sub)items, ((sub-)sub)points etc.\ are just special
cases of a more general construction ^|\varitem| with the syntax\lb
|\varitem|\<box~specification>|{|\<item~label>|}|\lb
where the optional \<box~specification> can be either\lb
^|to|~\<dimension> or ^|spread|~\<dimension>\lb
just as for any |\hbox|.
The \<item~label> will be put into an |\hbox| using the
\<box~specification> (if any) and the rest of
the paragraph will be indented by the width of this |\hbox|.
An |\item| (or |\point|) is a |\varitem| with the \<box~specification>
|to|~|2.5em|, |\sitem| uses |to|~|4.5em| and |\ssitem| uses
|to|~|6.5em|.
You can start a new paragraph but keep the indentation with
either one of the commands ^|\hvskip|\<glue> or ^|\parvskip|\<glue>,
e.g.\ with |\hvskip\parskip| if you want the normal spacing between
paragraphs.
These two commands are almost identical, the difference will
matter to {\TeX}perts only.
If you use the command ^|\bpargroup| inside a paragraph or item all
subsequent local definitions (e.g.\ changes of fonts or spacing)
will be effective only until the next ^|\par| or ^{blank line}.
\sect{Code Names}
Very often you will use numbers for equations, figures, tables,
references, chapters, sections and so on which are generated
automatically by {\TeX}.
If you want to refer later on to these numbers you can choose a
^{code name} for e.g.\ an equation number and refer to this code
name.
This has the advantage that the value assigned to such a code name
changes automatically if the equation number changes due to some
modifications of your manuscript.
These code names are ordinary {\TeX} control sequence names and
you should be careful not to use any code name which is the name
of a {\TeX} command (either a primitive command such as |\input| or a
command defined in the PLAIN format such as |\line| or a
command defined in PHYS such as |\eqtag|).
Contrary to the usual {\TeX} rules such code names may contain
not only (upper and lower case) letters but digits and apostrophes
as well.
If you use this possibility such code names must not occur except
as argument to an appropriate command (e.g.\ ^|\quote| or ^|\queq| or
^|\quref|).
Most of the commands which define code names will be discussed in
subsequent chapters of this manual.
At this point we just want to mention two of them.
The command ^|\label|\<code~name> will, in most cases, define the code
name such that its value is the (full) number of the most recent
chapter, appendix, (sub-)section or (sub-)point.
If we use, at this point, the command |\label\here| \label\here
then `|\quote{\here}|' will yield `\quote{\here}' because this is
\def\next#1.#2.{section~#2 in chapter~#1}%
\expandafter\next\here. and no subsection or (sub-)point was used
in this section.
The command ^|\pagelabel|\<code~name> will define the code name such
that it yields the page number of the current page.
This is, however, a somewhat delayed action.
The code name will not be properly defined until after {\TeX} has
decided where to finish the current page.
Any use of the code name before that point must be considered as a
^{forward reference}.
%*** end of file PMANCHAP ***
% \input pmanequ % equations
%*** this is file PMANEQU as of 10.03.86 ***
\chap{Equations}
\sect{Equation Numbers}
You should use ^|\eqtag| instead of PLAIN's ^|\eqno| or ^|\leqno| to
generate ^{equation numbers}.
Similarly you should use ^|\eqaligntag| instead of PLAIN's
^|\eqalignno| or ^|\leqalignno|.
The commands ^|\equleft| or ^|\equright| (default) will then
automatically put all equation numbers to the left or right of the
equations.
There is a third option ^|\equnone| which inhibits the printing of
all equation numbers.
This may be useful to prepare slides with equations.
You may choose to have your equations numbered automatically
by {\TeX}; to do so use the following equation number macros.
You can use ^|\equall|, ^|\equchap| (default) or
^|\equsect| to indicate that the equations should be
numbered throughout the paper, separately for each
chapter and appendix or separately for each section and appendix.
In case you choose |\equchap| or |\equsect| the numbers
will have an appropriate prefix.
Whenever you want to generate an equation number you can use
^|\eq|, e.g.\ in |\eqaligntag{|\dots|&\eq\cr|\dots|}| or
|$$|\dots|\eqtag\eq$$|.
Sometimes you may want to generate equation numbers e.g.\ \queq{5},
\queq{5a}, \queq{5b}, \dots, \queq{6}.
To do so you may use |\eq|, ^|\subeqbegin|, ^|\subeq|, \dots, |\eq|.
If you want to generate instead the equation numbers \queq{5},
\queq{6a}, \queq{6b}, \dots, \queq{7} you should use |\eq|, ^|\eqadv|
(\underbar{adv}ance the \underbar{eq}uation number by 1),
|\subeqbegin|, |\subeq|, \dots, |\eq|.
If you want to refer to the number of an equation in the text
you should use\lb
^|\EQ|\<code~name> instead of |\eq|,\lb
^|\EQADV|\<code~name> instead of |\eqadv|,\lb
^|\SUBEQBEGIN|\<code~name> instead of |\subeqbegin| and\lb
^|\SUBEQ|\<code~name> instead of |\subeq|.\lb
The \<code~name> will then be defined to
represent the equation number (|\EQ| and |\EQADV|)
or the suffix, e.g.\ $a$ or $b$ (|\SUBEQBEGIN| and |\SUBEQ|).\lb
Assuming you have chosen the option |\eqsect|, the $5^{\rm th}$
equation of section~2 in chapter~3 will get the tag
`\queq{3.2.5}'.
The \<code~name> will then evaluate to `5' in section~2
of chapter~3, to `2.5' in all other sections of chapter~3,
and to `3.2.5' outside of chapter~3.
You may always enforce the short form `5' by using
^|\shorttag|\<code~name> or the long form `3.2.5' by using
^|\fulltag|\<code~name>.
You may refer to one or more equations by using ^|\queq|
(\underbar{qu}ote \underbar{eq}uation), e.g.\lb
|\queq{|\<code~name>|}| might evaluate to `\queq{3.2.5}',\lb
|\queq{|\<code~name>|,\fulltag|\<code~name>|}| to
`\queq{3.2.5,4.1.7}' and\lb
|\queq{|\<code~name>|-\shorttag|\<code~name>|}| to `\queq{3.2.5-7}'.\lb
The command |\queq| puts the equation numbers into an
|\hbox|, therefore there will never be a line break between them.
There are in fact two options available:
If you specify |\equshort| (default) then |\queq{|\dots|}|
will give you abbreviated equation numbers as described above and
demonstrated in the examples below.
If you specify |\equfull| then |\queq{|\dots|}| will give
you the full equation numbers.
In either case an explicit |\fulltag| or |\shorttag| in the
argument of |\queq| takes precedence over these options.
Sometimes you will want to not only quote the equation
number(s) but to have `eq.\vspace' or `eqs.\vspace' or the
german equivalent in front of the equation number(s).
The commands ^|\qeq||{|\dots|}| and ^|\qeqs||{|\dots|}| will just do
that for you.
Assume you have used the command \dots|\EQ\eqname|\dots
to generate the equation number `\queq{3.2.5}'.
Somewhat later in the text you might want to use the number
`\queq{3.2.5'}' for a modified version of that equation.
For this purpose you can use the command |\eqapp\eqname '|
(\underbar{app}end to \underbar{eq}uation number).
You can use the abbreviations\lb
^|\eqn| instead of |\eqtag\eq|,\lb
^|\EQN| instead of |\eqtag\EQ|,\lb
^|\subeqnbegin| instead of |\eqtag\subeqbegin|,\lb
^|\SUBEQNBEGIN| instead of |\eqtag\SUBEQBEGIN|,\lb
^|\subeqn| instead of |\eqtag\subeq|,\lb
^|\SUBEQN| instead of|\eqtag\SUBEQ| and\lb
^|\eqnapp| instead of |\eqtag\eqapp|.
\subsec{Examples:}We will now use
\begintt
$$a=b+c-d\qquad\hbox{this is equation `Eq1'}\EQN\Eq1$$
\endtt
to produce:
$$a=b+c-d\qquad\hbox{this is equation `Eq1'}\EQN\Eq1$$
and use `|\qeq{\Eq1}|' to refer to equation `|\Eq1|' as
`\qeq{\Eq1}'.
\sect{More Examples:}
Being in a new section we can again use `|\qeq{\Eq1}|' to refer
to equation `|\Eq1|' as `\qeq{\Eq1}', but the result is
different.
The input
\beginlines
\dots|$${\cal A}=7\EQN\eqa$$|
\dots|$$\eqaligntag{A_1&=5&\SUBEQBEGIN\eqaa\cr|
|A_2&=12&\SUBEQ\eqab\cr}$$|
\dots|$$C_1=3\EQADV\eqb\SUBEQNBEGIN\eqba$$|
\dots|$$C_2=-21\SUBEQN\eqbb$$|
\dots|$${\cal A}=-7\eqnapp\eqa '$$|\dots
|Eqs.~\queq{\fulltag\eqa-\shorttag\eqb}|\dots
|\qeqs{\eqb\eqba,\eqa '}|\dots
\endlines
yields:\lb
\dots$${\cal A}=7\EQN\eqa$$
\dots$$\eqaligntag{A_1&=5&\SUBEQBEGIN\eqaa\cr
A_2&=12&\SUBEQ\eqab\cr}$$
\dots$$C_1=3\EQADV\eqb\SUBEQNBEGIN\eqba$$
\dots$$C_2=-21\SUBEQN\eqbb$$
\dots$${\cal A}=-7\eqnapp\eqa '$$\dots
Eqs.~\queq{\fulltag\eqa-\shorttag\eqb} \dots
\qeqs{\eqb\eqba,\eqa '} \dots
%*** end of file PMANEQU ***
% \input pmanfgtb % figures and tables
%*** this is file PMANFGTB as of 10.03.86 ***
\chap{Figures and Tables}
\sect{Storage Management} ^^{storage management}
The text of ^{figure captions}, ^{table captions}, ^{references},
the ^{table of contents} and (possibly) ^{footnotes} are collected
during the execution and stored for later printing.
If you specify the command ^|\storebox|, ^|\storelist| (default)
or ^|\storefile| these texts will be stored in boxes,
as lists of macro definitions or on external files (sysut1--sysut7).
Each of these methods has its advantages and disadvantages.
\pointbegin |\storebox|: This is the fastest method but it also uses
the largest amount of storage because all macros are expanded before
the text is stored.
Moreover the command |\save| will not be able to write these texts
to an external file for later |\restore|.
\point |\storelist|: This method is slightly slower but needs less
storage (macros are not expanded until the texts are finally printed).
\point |\storefile|: This is the slowest method but it avoids all
storage problem because the texts are stored on external files and are
reread only when they are printed.
\sect{Figure Captions}
The following figure caption macros allow you to automatically
number the figures, collect a list of ^{figure captions}
and print this list.
If you use ^|\figall| (default) the figures are numbered
throughout the paper,
if you use ^|\figchap| they are numbered separately for
each chapter and appendix, with the number of the chapter or
the letter of the appendix as prefix,
if you use ^|\figsect| they are numbered separately for
each section and appendix, with the the chapter and section number or
the letter of the appendix as prefix.
If you use ^|\figpage| (default) the list of figure captions
(if any) will be printed on one or several separate pages.
If you use ^|\nofigpage| the list will appear on separate
pages only if you choose ^|\pagechap|.
If you use ^|\fig||{|\<caption>|}| a number will be assigned to the
figure and the \<caption> will be saved for the list of figure
captions.
If you want to assign your own label to a figure, i.e.\ just
want to save the figure caption for later printing, use
|\fig|^\<label>|{|\<caption>|}|.
The label must not contain any explicit braces (|{| or |}|).
It must contain the entire number for the figure (including
any chapter number as prefix) and could e.g.\ be a figure
number defined previously (with |\FIG|) with a suffix (a, b, \dots).
You can save a figure caption for the list of captions and at the
same time generate the description of the figure in the text.
Just use ^|\ffig| instead of |\fig|.
If you want to refer to a figure in the text you should use\lb
^|\FIG|\<code~name> instead of |\fig| or\lb
^|\FFIG|\<code~name> instead of |\ffig|.\lb
You can then refer to figures e.g.\ by
^|\qufig||{|\<code~name>|}|,\lb
|\qufig{|\<code~name>|,|\<code~name>|}|
or |\qufig{|\<code~name>|-|\<code~name>|}|\lb
which might evaluate to
\begingroup % for local def's
\def\name{5}
`\qufig{\name}',
\def\name{3.1} \def\namea{4.2} \german
`\qufig{\name,\namea}' or
\def\name{9} \def\namea{11} \english
`\qufig{\name-\namea}'.
\endgroup % for local def's
The command ^|\figadd||{...}| can be used to add an ordinary
paragraph of text to the list of figure captions.
Such paragraphs can occur before the first caption, between captions
or after the last caption.
You can use ^|\figout| to print a list of all
figure captions collected so far (if any).
This will at the same time empty the list.
If you want a separate list of figure captions for each chapter
just use the command |\figout| at the end of each chapter.
The command ^|\figkill| discards all figure captions collected so far;
this may be helpful to avoid storage problems.
\sect{Figures and Plots} ^^{figures}
The command ^|\frame||{|\<width>|}{|\<heigth>|}{|\<depth>|}| produces
an |\hbox| containing a box of the given dimensions which is empty
except for rules just inside the box boundaries.
Both \<width> and \<height>+\<depth> must be positive but either
\<height>
or \<depth> could be negative.
Note, however, that the surrounding box (as any |\hbox|) will have
nonnegative height and depth!
In the following we will illustrate how such a frame box or any other
box (e.g.\ a |\table|), possibly together with a description, can be
placed in the text or as an insertion.
First we want to demonstrate how frame boxes will appear in
the middle of a line:
e.g.\ |\frame{1cm}{1cm}{-.5cm}| \frame{1cm}{1cm}{-.5cm} or
|\frame{2cm}{-1mm}{6mm}| \frame{2cm}{-1mm}{6mm} or
|\frame{1cm}{5mm}{5mm}| \frame{1cm}{5mm}{5mm} and so on.
\def\marginbox#1{\par\begingroup \count255=#1\relax
\dimen0=\ht\count255 \advance\dimen0\dp\count255
\dimen2\dimen0 \advance\dimen2\parskip
\skip0=0pt plus\dimen2 \vskip\skip0 \penalty-110 \vskip-\skip0
\strut \vadjust{\kern-\dp\strutbox \vtop to\dp\strutbox
{\kern-\ht\strutbox \baselineskip\dp\strutbox
\rtline{\copy\count255}\vss\null}}%
\dimen2.5em\advance\dimen2\wd\count255
\count255=0 \loop \ifdim\dimen0>0pt\advance\count255-1
\advance\dimen0-\baselineskip \repeat
\edef\next{\endgroup \hangafter\the\count255
\hangindent-\the\dimen2}\next}
\setbox0\frame{3cm}{3cm}{0cm} ^^|\marginbox|
\marginbox{0}At the begin of a paragraph you can leave room
for a box on the right side by using ^|\hangindent| and ^|\hangafter|.
In the present example the values for these commands have been
computed from the dimensions of the box.
In addition we made sure that there will be no page break
between the first lines of the paragraph with the hanging
indentation.
This paragraph was started with the commands
\begintt
\setbox0\frame{3cm}{3cm}{0cm}
\marginbox{0}At the begin ...
\endtt
and the macro definition
\beginttlines
\def\marginbox#1{\par\begingroup \count255=#1\relax
\dimen0=\ht\count255 \advance\dimen0\dp\count255
\dimen2\dimen0 \advance\dimen2\parskip
\skip0=0pt plus\dimen2 \vskip\skip0 \penalty-110 \vskip-\skip0
\strut \vadjust{\kern-\dp\strutbox \vtop to\dp\strutbox
{\kern-\ht\strutbox \baselineskip\dp\strutbox
\rtline{\copy\count255}\vss\null}}%
\dimen2.5em\advance\dimen2\wd\count255
\count255=0 \loop \ifdim\dimen0>0pt\advance\count255-1
\advance\dimen0-\baselineskip \repeat
\edef\next{\endgroup \hangafter\the\count255
\hangindent-\the\dimen2}\next}
\endttlines
\noindent With slight modifications in the definition of
|\marginbox| the paragraph could start without the usual paragraph
indentation (|\noindent|) or the hanging indentation could be on the
left side (|\hangindent>0|).
\def\stepbox#1{\begingroup\count255=#1\relax
\dimen0\ht\count255 \advance\dimen0-\ht\strutbox
\lower\dimen0\copy\count255
\dimen0\ht\count255 \advance\dimen0\dp\count255
\advance\dimen0\lineskip
\vadjust{\nobreak \vskip-\dimen0}\allowbreak
\dimen0\hsize \advance\dimen0-\leftskip
\advance\dimen0-\rightskip \advance\dimen0-\wd\count255
\dimen4\ht\count255 \dimen6\dp\count255 \dimen8\wd\count255
\setbox0\null \ht0\dimen4 \dp0\dimen6 \wd0\dimen8
\advance\dimen6-\dp\strutbox
\count255=0 \dimen2=0pt \loop \advance\count255 1
\ifdim\dimen2<\dimen0
\advance\dimen2 .25em\repeat \divide\dimen0\count255
\loop\ifnum\count255>0 \advance\count255-1 \vadjust{}\kern\dimen0
\allowbreak \repeat
\raise\dimen6\box0 \endgroup}
\setbox0\hbox{$\mat{a&b\cr c&d\cr}$}
\setbox2\frame{2cm}{15mm}{0pt} ^^|\stepbox|
Finally, as the most complicated example to place boxes in a paragraph,
we have a matrix \stepbox{0} and a framebox \stepbox{2} placed such
that their top matches the text to their left and their bottom
matches the text to their right.
\edef\next{\the\prevgraf}The method used to achieve this effect is
somewhat devious and not entirely satisfactory, but it is the best we
could think of.
The previous paragraph actually consists of {\next} lines and there is
a slight chance that there is an undesirable page break.
We have used the commands
\begintt
\setbox0\hbox{$\mat{a&b\cr c&d\cr}$}
\setbox2\frame{2cm}{15mm}{0pt}
.... matrix \stepbox{0} and a framebox \stepbox{2} placed ...
\endtt
together with the macro definition
\beginttlines
\def\stepbox#1{\begingroup\count255=#1\relax
\dimen0\ht\count255 \advance\dimen0-\ht\strutbox
\lower\dimen0\copy\count255
\dimen0\ht\count255 \advance\dimen0\dp\count255
\advance\dimen0\lineskip
\vadjust{\nobreak \vskip-\dimen0}\allowbreak
\dimen0\hsize \advance\dimen0-\leftskip
\advance\dimen0-\rightskip \advance\dimen0-\wd\count255
\dimen4\ht\count255 \dimen6\dp\count255 \dimen8\wd\count255
\setbox0\null \ht0\dimen4 \dp0\dimen6 \wd0\dimen8
\advance\dimen6-\dp\strutbox
\count255=0 \dimen2=0pt \loop \advance\count255 1
\ifdim\dimen2<\dimen0
\advance\dimen2 .25em\repeat \divide\dimen0\count255
\loop\ifnum\count255>0 \advance\count255-1 \vadjust{}\kern\dimen0
\allowbreak \repeat
\raise\dimen6\box0 \endgroup}
\endttlines
On our installation there exists the possibility to combine {\TeX}
output
with ^{plots}.
If you specify the option ^|\graphics| the command\lb
^|\graphic||{|\<plot
specification>|}{|\<width>|}{|\<heigth>|}{|\<depth>|}|\lb
produces an invisible plot box and uses ^|\special| commands in order to
transfer the \<plot specification> together with the coordinates to the
DVI-file.
Lateron when the DVI-file is prepared for printing on a suitable device
a plot from a (GKS) plot metafile will be inserted.
If you specify the option ^|\nographics| (default) the command
|\graphic|
will produce a frame box of exactly the same dimensions as the plot box
and write a note to the LOG-file.
\midinsert \advance\leftskip by 2.5 cm
\advance\rightskip by 2.5 cm
\ctrline{\frame{10cm}{5cm}{0cm}}
\FFIG\figr1{Demonstration of how to leave 5 cm of blank space for
a figure and to generate a figure caption} \endinsert
\subsec{Example:}Immediately before this unnumbered subsection
we have used the commands
\begintt
\midinsert \advance\leftskip by 2.5 cm
\advance\rightskip by 2.5 cm
\ctrline{\frame{10cm}{5cm}{0cm}}
\FFIG\figr1{Demonstration of how to leave 5 cm of blank space for
a figure and to generate a figure caption} \endinsert
\endtt
to leave blank space for a figure and generate the caption.
We can now refer to this figure as `\qufig{\figr1}' by using
the command `|\qufig{\figr1}|'.
Another set of commands reserves blank space for pictures
and allows for a more elaborate description below them, but
will not produce entries for the list of figure captions.
If you want such entries you have to combine these commands
with |\fig| or |\FIG|.
The command\lb
|\pict{|\<dimension>|}| or ^|\pict|^\<label>|{|\<dimension>|}|\lb
will reserve a blank space of vertical dimension
\<dimension> for a picture, followed by a description
(actually a ^|\varitem|).
If the \<label> is omitted {\TeX} will assign a figure number,
otherwise the \<label> will be used.
You can use ^|\PICT|\<code~name> instead of |\pict| if you want
to refer to the figure number lateron.
The description may start with a part relevant for the whole
picture.
This may be followed by one or several commands
^|\spict||{|^\<slabel>|}| and the description of some part of
the picture labelled \<slabel>.
The entire description will terminate with the next ^|\par|
or ^{blank line}.
You may, however, use ^|\parvskip||\parskip| to divide the description
itself into several paragraphs.
\pageinsert\singlespace\centerline{An inserted page\strut}\hrule
\strut First we give an example where |\PICT| is used without
a \<label> (automatic numbering).
The sequence of commands
\beginttlines
\PICT\figr2{1cm} First we have a description for the whole
picture. The descriptions for its parts could, of course, be
omitted.
\spict{(a)} This is the description for part (a) if the picture.
It is indented somewhat more to leave room for the sub-label.
\spict{(b)} Here is the description for another part.
\endttlines
yields
\PICT\figr2{1cm} First we have a description for the whole
picture. The descriptions for its parts could, of course, be
omitted.
\spict{(a)} This is the description for part (a) if the picture.
It is indented somewhat more to leave room for the sub-label.
\spict{(b)} Here is the description for another part.
\noindent Note that we have not produced an entry in the list of
figure captions for the \qufig{\figr2} above.
In the next example we use |\FIG| to produce such an entry and then
|\pict| with a \<label> to generate the description.
Moreover we use |\parvskip\parskip| to start a new paragraph
inside the description.
\beginttlines
\FIG\figr3{A picture with description for its two
parts (a) and (b)}
\pict\figr3{12mm}\spict{(a)} Here the description for the first
part starts without any description common to all parts.
\parvskip\parskip We can start a new paragraph without
\parvskip\parskip\indent or with indentation.
\spict{(b)} Description for the second part.\par
\noindent We can now refer to the whole figure as \qufig{\figr3}
or just to the second part as \qufig{\figr3}b and so on.
\endttlines
\FIG\figr3{A picture with description for its two
parts (a) and (b)}
\pict\figr3{12mm}\spict{(a)} Here the description for the first
part starts without any description common to all parts.
\parvskip\parskip We can start a new paragraph without
\parvskip\parskip\indent or with indentation.
\spict{(b)} Description for the second part.\par
\noindent We can now refer to the whole figure as \qufig{\figr3}
or just to the second part as \qufig{\figr3}b and so on\strut.
\par\hrule\endpage\endinsert
Here we have used the commands
\begintt
\pageinsert\singlespace\centerline{An inserted page\strut}\hrule
\strut First we give ...
.... and so on\strut.
\par\hrule\endpage\endinsert
\endtt
to demonstrate, on a separate page, how these commands work and how
they can be combined with the other figure caption macros.
\sect{Table Captions and Tables} ^^{table captions}
The table options ^|\taball|, ^|\tabchap|, ^|\tabsect|,
^|\tabpage|, ^|\notabpage| and the table caption macros
^|\tab|, ^|\ttab|, ^|\TAB|, ^|\TTAB|,
^|\qutab|, ^|\tabadd|, ^|\tabout| and ^|\tabkill|
are the exact analogue of those for figures.
The {\TeX}book \quref{\texbook} explains in detail the use of
^|\halign| to align table entries.
This is in fact rather simple as long as you do not want vertical
rules.
For tables with vertical rules you may consult the examples on pages
247 (Chapter 22: Alignment) and 392 (Appendix D: Dirty Tricks).
Based on the example on page 247 there is a macro ^|\table|
for ^{tables} with vertical rules.
The syntax for |\table| is identical to that for |\halign|:\lb
|\table|^\<box specification>|{|^\<alignment material>|}|.\lb
There are, however, a few restrictions.
\pointbegin The ^\<preamble> must terminate with ^|\cr|,
not with ^|\crcr|.
Immediately after the |{| which precedes the preamble, after an |&|
which terminates a template in the preamble (but not after a second
|&| which indicates that the remainder of the preamble shall be
repeated if necessary) and immediately after the |\cr| which
terminates the preamble you can specify ^|\vrule| to indicate a vertical
rule at this point.
\point Immediately after the preamble (after the |\cr| or |\vrule|)
you may specify ^|\hrule| or ^|\noalign||{...}|.
If you use |\noalign| the vertical rules will, in general, be
interrupted.
\point The preamble may contain ^|\span| (expand) as usual but this
macro expansion must not produce any |&|, |\vrule| or |\cr|.
\point The rest of the ^\<alignment material> may contain
^|\omit|, ^|\span| and ^|\multispan| as usual but all |&|'s
and |\cr|'s must be explicit.
\point |\table| uses the \<glue> parameter ^|\htabskip| and the
\<dimension> parameter ^|\vtabskip| for extra space between the
aligned material and the position where rules are or could be.
The default values are `1em plus 2em minus .5 em' (for 12pt roman)
and `2.5pt' respectively.
\point Inside a table you can use
|\ml{...\nl...}| to produce table entries which consist
of several lines.
The ^|\ml| (multi line mode) could be part of the preamble,
each ^|\nl| (new line) starts a new line.
\midinsert \hbox{\hskip1cm\vtop{\hrule height0pt\table to5.5cm{
\vrule\hfil#&\vrule#\hfil\cr \vrule \hrule
This is a&\ml{simple\nl table}\cr \hrule
A normal&row\cr \hrule \noalign{\vskip1pt}\hrule
\multispan2\hfil Three rows which span\hfil\cr
\multispan2\hfil two columns and are\hfil\cr
\multispan2\hfil centered\hfil\cr \hrule}}\hskip.5cm%
\vtop{\hsize7cm\hrule height0pt\raggedright
\TTAB\tabl1{Example of a rather simple table which
is extended to 5.5 cm. The description appears as
a 7 cm wide paragraph to the right of the table.}}}
\endinsert
\midinsert \advance\leftskip by 2 cm
\advance\rightskip by 2 cm
\TTAB\tabl2\tabl1 a{E. Cartan's list of classical and
exceptional simple Lie algebras.}
\bigskip
\centerline{\table to 11cm{
$#$\hfil&\vrule&\hfil$#$\hfil&\vrule
\hfil$#$\hfil&\vrule$#$\hfil\cr\hrule
$Lie Algebra$&\rm Rank&\rm Dimension&%
\ml{corresponding\nl classical group
\nl(compact real form)}\cr\hrule
A_n\quad(n\ge1)&n&n(n+2)&SU(n+1)\cr
B_n\quad(n\ge2)&n&n(2n+1)&SO(2n+1)\cr
C_n\quad(n\ge3)&n&n(2n+1)&USp(2n)\cr
D_n\quad(n\ge4)&n&n(2n-1)&SO(2n)\cr \hrule
G_2&2&14\cr F_4&4&52\cr E_6&6&78\cr
E_7&7&133\cr E_8&8&248\cr }}\endinsert
\subsec{Examples:}The two tables \qutab{\tabl1} and \qutab{\tabl2}
are produced with the following sequence of commands:
\beginlines
|\midinsert \hbox{\hskip1cm\vtop{\hrule height0pt\table to5.5cm{|
| \vrule\hfil#&\vrule#\hfil\cr \vrule \hrule|
| This is a&\ml{simple\nl table}\cr \hrule|
| A normal&row\cr \hrule \noalign{\vskip1pt}\hrule|
| \multispan2\hfil Three rows which span\hfil\cr|
| \multispan2\hfil two columns and are\hfil\cr|
| \multispan2\hfil centered\hfil\cr \hrule}}\hskip.5cm%|
| \vtop{\hsize7cm\hrule height0pt\raggedright|
| \TTAB\tabl1{Example of a rather simple table which|
| is extended to 5.5 cm. The description appears as|
| a 7 cm wide paragraph to the right of the table.}}}|
|\endinsert|
\endlines
\beginlines
|\midinsert \advance\leftskip by 2 cm|
|\advance\rightskip by 2 cm|
|\TTAB\tabl2\tabl1 a{E. Cartan's list of classical and|
|exceptional simple Lie algebras.}|
|\bigskip|
|\centerline{\table to 11cm{|
| $#$\hfil&\vrule&\hfil$#$\hfil&\vrule|
| \hfil$#$\hfil&\vrule$#$\hfil\cr\hrule|
| $Lie Algebra$&\rm Rank&\rm Dimension&%|
| \ml{corresponding\nl classical group|
| \nl(compact real form)}\cr\hrule|
| A_n\quad(n\ge1)&n&n(n+2)&SU(n+1)\cr|
| B_n\quad(n\ge2)&n&n(2n+1)&SO(2n+1)\cr|
| C_n\quad(n\ge3)&n&n(2n+1)&USp(2n)\cr|
| D_n\quad(n\ge4)&n&n(2n-1)&SO(2n)\cr \hrule|
| G_2&2&14\cr F_4&4&52\cr E_6&6&78\cr|
| E_7&7&133\cr E_8&8&248\cr }}\endinsert|
\endlines
%*** end of file PMANFGTB ***
% \input pmanref % references
%*** this is file PMANREF as of 11.03.86 ***
\chap{References}
There are two basic way to quote ^{references} in an article or book.
One possibility is to assign a number to each reference when it
is used for the first time and to list them all, ordered by numbers,
in the list of references.
The other possibility is to quote references by the name of the
author(s) and possibly a date and list them all in alphabetic order.
Most of this chapter deals with the first of these
possibilities (numeric references). ^^{references, numeric}
Only one section later on will describe how to use references by name.
^^{references, by name}
The reference macros have to serve several purposes: they must
\pointbegin save the reference text,
\point assign numbers to the references,
\point put quotations to references in the text and
\point print a list of all references.
\par\noindent There is a variety of reference macros which perform
one or several of these tasks.
\sect{Form of References}
The command ^|\quref| is very similar to the command ^|\queq|
for equations, it quotes all the references in its argument.
You may specify ^|\refsup| (default) if quotations to references
should normally appear as superscripts
(\qurefsup like this \quref{\texbook})
or ^|\refsqb| if they or should be enclosed in square brackets
(\qurefsqb like this \quref{\texbook}).
These options will also affect the form of the list of references
and they cannot be changed once the first reference is used.
You can however specify ^|\qurefsup| (default with |\refsup|),
^|\qurefsqb| (default with |\refsqb|) or ^|\qurefnum|
if at some place you want to deviate from your usual style of
quotation.
Unlike most other specifications described in this manual they are
local to the group (e.g.\ |{...}|) within which they occur.
The input:\lb
|the conjecture by {\qurefsup M\"uller \quref{a}} and {\qurefsqb|\lb
|Schulz \quref{b}} was proven in {\qurefnum Ref.~\quref{I}}.|\lb
yields:\lb
the conjecture by {\qurefsup M\"uller \quref{a}} and {\qurefsqb
Schulz \quref{b}} was proven in {\qurefnum Ref.~\quref{I}}.
The commands ^|\qref| and ^|\qrefs| are similar to ^|\qeq| and ^|\qeqs|,
i.e. |\qref{...}| is a shorthand for\lb
|{\qurefnum Ref.~\quref{...}}| (or its german equivalent).
The commands ^|\refpage|, ^|\norefpage|, ^|\refadd|, ^|\refout| and
^|\refkill| have exactly the same function
as the corresponding ones for figures and tables.
\sect{Predefined References} ^^{references, predefined}
You may wish to define some or all references at the begin of your
input.
The command ^|\RF|\<code~name>|{|\<text>|}| will save \<text>
but will not assign a number to the reference.
A number will be assigned when the first quotation of this reference
appears in the text.
References defined with |\RF| can therefore appear in any order.
Those never quoted will not appear in the list of references.
If you use the commnand ^|\RFlist| (default) predefined references will
be stored as macro definitions,
if you use ^|\RFfile| they will be stored on an external file.
You can use the command ^|\RFext|~\<filename>{\vspace} to indicate that
all your |\RF|'s are contained in an external file.
This method is somewhat more efficient than |\RFfile| because there
is no need to copy all |\RF|'s to an auxiliary file.
\subsec{Note:}Clearly |\RFlist| is faster than |\RFfile| and |\RFext|
but also needs more storage to keep the text of all references.
|\RFfile| or |\RFext| should only be used if necessary, because the
method is not very efficient.
It may happen that the (auxiliary or external) file containing the
|\RF|'s has to be read several times in order to retrieve the text
of all references.
The maximal number of predefined references kept in storage is given
by the counter ^|\RFmax| with the default value 50.
If the reference texts are very long it may be necessary to reduce this
value, if the texts are rather short and there are more than 50
predefined references the value of |\RFmax| could be increased.
\subsec{Warning:}Alternating definition and (first) use of predefined
references should be avoided under all circumstances, if |\RFfile| has
been specified.
\subsec{Examples:}We may use the commands
\lb|\RF\AUThor{A.U. Thor, \dots}|
\lb|\RF\Drof{R.J. Drofnats, \dots;\lb|
\lb| A. Kabelschacht, \dots}|\lb
\RF\AUThor{A.U. Thor, \dots}
\RF\Drof{R.J. Drofnats, \dots;\lb
A. Kabelschacht, \dots}
to predefine two references, the second one with two articles.
Lateron we use the input\lb
|\dots\space this hypothesis \quref{\Drof} has recently been|\lb
|proven \quref{\AUThor} \dots|\lb
to obtain:\lb
\dots\space this hypothesis \quref{\Drof} has recently been
proven \quref{\AUThor} \dots
A certain difficulty arises if all references are predefined and you
want (e.g.\ in the introduction) to refer to several of them as
e.g.\ `\quref{1-4}', because you have to use all of them in order to
assign numbers but you do not want all these numbers in your output.
The solution is\lb
|\quref{|\<code~name>|\use{|\<code~name>\<code~name>|}-|\<code~name>|}|.
The command ^|\use| puts its argument into an hbox and throws this
hbox away, which may be useful for other purposes as well.
\subsec{Examples:}The input
\begintt
\RF\uuu{uuu} \RF\vvv{vvv}
\RF\www{www} \RF\xxx{xxx}
\dots\space \quref{\uuu\use{\vvv\www}-\xxx} \dots
\endtt
yields:\lb
\RF\uuu{uuu} \RF\vvv{vvv}
\RF\www{www} \RF\xxx{xxx}
\dots\space \quref{\uuu\use{\vvv\www}-\xxx} \dots
\sect{Single References}
You can use ^|\ref||{|\<text>|}| to define a reference which is used
just once.
This command saves \<text>, assigns a number and quotes this reference.
\lb You can use ^|\REF|\<code~name>|{|\<text>|}| to define a reference
which is used several times.
This command saves the \<text> and assigns a number.
It will, however, generate no quotation to this reference.
To obtain such a quotation use ^|\refend| (which always refers
to the reference number which was assigned last) or
|\quref{|\<code~name>|}|.
\subsec{Examples:}The input\lb
|\dots\space \ref{aaa} \dots\space \REF\bbb{bbb}\refend\space\dots|\lb
yields:\foot{Observe the effects in the list of references}\lb
\dots\space \ref{aaa} \dots\space \REF\bbb{bbb}\refend\space\dots
\sect{Multiple References} ^^{references, multiple}
In order to generate multiple references you can, of course, use
|\quref| with sufficiently complicated arguments.
If you want, however, to introduce a number of new references and
refer to all of them you can use the sequence of commands:
\lb^|\refs||{|\<text>|}| or ^|\REFS|\<code~name>|{|\<text>|}|
\lb^|\refscon||{|\<text>|}| or ^|\REFSCON|\<code~name>|{|\<text>|}|
\lb|...|
\lb|\refscon{|\<text>|}| or |\REFSCON|\<code~name>|{|\<text>|}|
\lb^|\refsend|.
\lb If you omit the |\refsend| the quotation
to these references will be omitted.
If you wish, you can in fact use |\refsend| several times.
\subsec{Examples:}The input
\begintt
\dots\space \REFS\ccc{ccc} \refscon{This is a ... indented.}
\REFSCON\eee{eee} \refsend\space\dots
\quref{\Drof,\ccc-\eee}
\endtt
yields:\lb
\dots\space \REFS\ccc{ccc} \refscon{This is a very long reference which
will certainly need more than one line; the second line will be
indented.}
\REFSCON\eee{eee} \refsend\space\dots
\quref{\Drof,\ccc-\eee}
\sect{References by Name} ^^{references, by name}
The command ^|\refnam| indicates that you want references by
name.
In this case all references must be predefined (|\RF|) and their order
is important.
All those used at least once will be printed in the list of references
in exactly the same order.
Because it is much harder to standardize quotations for references by
name the command |\quref| will not produce any visible output.
It will just remember which references have been used.
The commands |\qref|, |\qrefs| and all commands for single or multiple
references cannot be used together with |\refnam|.
\sect{Multiple Lists of References}
It is quite possible to have a separate list of references after
each chapter.
You just have to use |\refout| (probably with the option |\norefpage|)
at the end of each chapter.
The command ^|\refout| will not only print a list of references
but will in addition reset the reference counter to zero and forget
all code names used for single and multiple references.
All the code names for predefined references will, however, still be
defined and available for future use in a later chapter.
\sect{Macros for Physics Journals}
In order to facilitate the writing of references and to conserve
storage there are macros for frequently used ^{physics journals}.
You can choose between the options ^|\yearpage| (default) or
^|\pageyear| if references generated by these macros should have
the form `\yearpage \journal{journal}volume(year)page*'
or `\pageyear \journal{journal}volume(year)page*'.\yearpage
The printing of the journal name and volume is determined by
^|\journalstyle| and ^|\volumestyle| with the default definitions
\lb|\def\journalstyle{\sl}| (slanted) and
\lb|\def\volumestyle{\bf}| (boldface);\lb
other useful possibilities are
\lb|\def\volumestyle{\underbar}| (underlined) or
\lb|\def\volumestyle{}| (roman).
The basic macros are\lb
^|\journal||{|\<journal name>|}|\<volume>|(|\<year>|)|\<page(s)>|*|\lb
for journals with ordinary volume numbers,\lb
^|\journalp||{|\<journal name>|}|\<letter>\<volume>|(|\<year>|)|%
\<page(s)>|*|\lb
for journals where a letter precedes the volume numbers
(e.g.\ \Nucl\Phys) and\lb
^|\journalf||{|\<journal name>|}|\<letter>\<volume>|(|\<year>|)|%
\<page(s)>|*|\lb
for journals where a letter follows the volume numbers
(e.g.\ \Phys\Lett).
The following macros for frequently used physics journals are defined
in terms of these basic macros:
^^|\NPA|^^|\NPB|^^|\PLA|^^|\PLB|^^|\PR|^^|\PRA|^^|\PRB|^^|\PRC|
^^|\PRD|^^|\PRL|
%*** the following lines are copied from PHYSJRNL ***
\beginttlines
\def\NPA{\journalp{\Nucl\Phys}A}
\def\NPB{\journalp{\Nucl\Phys}B}
\def\PLA{\journalf{\Phys\Lett}A}
\def\PLB{\journalf{\Phys\Lett}B}
\def\PR{\journal{\Phys\Rev}}
\def\PRA{\journalp{\Phys\Rev}A}
\def\PRB{\journalp{\Phys\Rev}B}
\def\PRC{\journalp{\Phys\Rev}C}
\def\PRD{\journalp{\Phys\Rev}D}
\def\PRL{\journal{\Phys\Rev\Lett}}
\endttlines
where macros for frequently used abbreviations
(e.g.\ `|\Phys|' for `\Phys')
are used in order to conserve storage space.
\subsec{Examples:}The following list displays the use of some of these
macros together with the resulting output.
\halign{`#'\qquad\hfill&`#'\hfill\cr
|\pageyear\PRL23(1976)27*|&\pageyear\PRL23(1976)27*\cr
|\yearpage\PRL23(1976)27--29*|&\yearpage\PRL23(1976)27--29*\cr
|\PRL45(1980)*|&\PRL45(1980)*\cr
|\PRL45()*|&\PRL45()*\cr
|\PRL(1984)*, to appear|&\PRL(1984)*, to appear\cr
|\NPB72(1982)13*|&\NPB72(1982)13*\cr
|\NPB()* (to appear)|&\NPB()* (to appear)\cr
|\PLA72(1982)13--27*|&\PLA72(1982)13--27*\cr
%*** end of file PMANREF ***
% \input pmanfoot % footnotes and insertionss
%*** this is file PMANFOOT as of 11.03.86 ***
\chap{Footnotes and Insertions}
\sect{Footnotes} ^^{footnotes}
You can use the command ^|\footbot| (default) or ^|\footend|
if `footnotes' should appear at the bottom of the page (as footnotes
like this\foot{A footnote at the bottom of the page})
or should be printed separately at the end in the same way as
figure captions, table captions and references (as required
by some journals) like this\footend\foot{A footnote at the end
of the paper}\footbot.
In the later case you can use the commands ^|\footpage|,
^|\nofootpage|, ^|\footadd|, ^|\footout| and ^|\footkill|
which have exactly the same function as the corresponding ones for
figures, tables and references.
To generate footnotes you can use either\lb
^|\footnote||{|\<symbol>|}{|\<text>|}|\foot{The lack of space between
`|}|' and `|{|' in this and similar constructions is significant!}
or ^|\foot||{|\<text>|}|.\lb
The difference is that with |\footnote| you choose your own
symbol, whereas footnotes produced with |\foot| are automatically
numbered and the (superscripted) number is used as symbol.
You can choose between ^|\footsqb| (default) and ^|\footpar|
to get these numbers enclosed in square brackets or followed by
a parenthesis.
The text of footnotes (only those at the bottom of the page) will
start with the command ^|\footstyle| with the default definition\lb
|\let\footstyle\relax|.\lb
If you want your footnotes printed in 10pt you should replace this
by e.g.\lb
|\def\footstyle{\tenpoint}|.
\subsec{Examples:}We will first use \foot{This is a short footnote}\lb
|\foot{This is a short footnote}|\lb
\footnote{*}{This is a footnote. In order to see the difference
in spacing within and between footnotes we make it long}\lb
|\footnote{*}{This|\dots\lb
\dots| long}|\lb
and finally \foot{This is another short footnote}\lb
|\foot{This is another short footnote}|\lb
to generate three footnotes.
With the option |\footbot| footnotes are insertions which should
eventually migrate to \TeX's main vertical list (compare the
\TeX book \quref{\texbook}).
They will, however, not do so, i.e.\ are lost, if they are hidden
inside nested boxes, e.g.\ in a table.
In such a case you can split the function of\lb
|\foot{|\<text>|}| resp.\ |\footnote{|\<symbol>|}{|\<text>|}| into\lb
^|\hfoot| resp.\ ^|\hfootnote{|\<symbol>|}| which will produce the
reference to the footnote as well as save the symbol in the (global)
variable ^|\footid| and\lb
^|\vfootnote||\footid{|\<text>|}| somewhat later on the same page which
will produce the footnote insertion, such that the insertion can
migrate to the main vertical list.
\subsec{Examples:}The input ^^|\boxit|
\begintt
\boxit{A lost footnote\foot{A lost footnote}}\quad
\boxit{Two footnotes\hfoot \glet\footxx=\footid \space inside
a box\hfootnote{$^*$}}
\vfootnote\footxx{First footnote from inside a box}
\vfootnote\footid{Second footnote from inside a box}
\endtt
yields:\lb
\boxit{A lost footnote\foot{A lost footnote}}\quad
\boxit{Two footnotes\hfoot \glet\footxx=\footid \space inside
a box\hfootnote{$^*$}}
\vfootnote\footxx{First footnote from inside a box}
\vfootnote\footid{Second footnote from inside a box}
\sect{Insertions}
You can use PLAIN's commands ^|\midinsert|, ^|\topinsert| and
^|\pageinsert| together with ^|\endinsert| to produce ^{insertions}
(e.g.\ tables or blank space for figures).
%*** end of file PMANFOOT ***
% \input pmantoc % table of contents
%*** this is file PMANTOC as of 06.03.86 ***
\chap{Table of Contents}
During the processing of your manuscript you {\TeX} can collect
information for a ^{table of contents} which can be printed at the end.
It is, however, no problem to manipulate page numbers in such a way
that the table of contents appears e.g.\ on pages 1 and 2 and the
text starts on page 3.
The commands ^|\tocpage|,
^|\notocpage|, ^|\tocadd|, ^|\tocout| and ^|\tockill|
which have exactly the same function as the corresponding ones for
figures, tables and references.
You can specify an entry for the table of contents with the command\lb
^|\toc||{|\<label>|}{|\<text>|}|\lb
and the page number will be automatically appended to the \<text>.
You can also use the possibility to generate entries automatically.
\bullitem If you choose the option ^|\tocnone| (default) there will
be no automatic entries for the table of contents.
\bullitem With the option ^|\tocchap| one entry will be
automatically generated for each chapter (with the chapter
number as \<label> and the chapter title as \<text>) and for each
appendix.
\bullitem With the option ^|\tocsect| there will be in addition
one entry for each section (as in this manual).
\bullitem With the option ^|\tocsecs| there will be in addition
one entry for each subsection.
\bullitem With the option ^|\tocsecss| there will be in addition
one entry for each sub-subsection.
\bullitem With the option ^|\tocsecsss| there will be in addition
one entry for each sub-sub-subsection.
\noindent You can combine these automatic entries with additional ones
specified by ^|\toc| and ^|\tocadd|.
The input
\begintt
\tocadd{Note that most of this table of contents has been produced
automatically with the option `tocsect'.
Only this paragraph and the immediately following entry
have been produced explicitely.}
\toc{Demonstration}{how to generate (explicitely) an entry for the
table of contents. Very long entries will be split into several
lines with apropriate indentation on both sides}
\endtt
\tocadd{Note that most of this table of contents has been produced
automatically with the option `tocsect'.
Only this paragraph and the immediately following entry
have been produced explicitely.}
\toc{Demonstration}{how to generate (explicitely) an entry for the
table of contents. Very long entries will be split into several
lines with apropriate indentation on both sides}
does not produce any visible output at this point.
The effect can, however, been seen in the table of contents.
%*** end of file PMANTOC ***
% \input pmantext % some macros for text
%*** this is file PMANTEXT as of 06.03.86 ***
\chap{Some Macros for Text}
The command ^|\thetime| yields the time in the form `hh:mm'
(e.g.\ \thetime), ^|\themonth| yields the current month in words
(e.g.\ \themonth\ or \german\themonth),
^|\date| yields todays date in the form `dd.mm.yy' (e.g.\ \date) and
^|\thedate| yields todays date in long form such as `\thedate' or
`\english\thedate'.
You can use ^|\ctrline|, ^|\lftline| or ^|\rtline| to produce a
centered, left-justified or right-justified line of text.
These commands are almost identical to PLAIN's ^|\centerline|,
^|\leftline| and ^|\rightline| but they use |\hfil| instead
of |\hss|.
The use of |\hfil| does not allow the line to stick out on one
or both sides but it does allow to cancel the |\hfil| by an
|\hfilneg| or to override it by an |\hfill|.
The definition of ^|\loop| has been modified in order to allow
the construction\lb
|\loop ... \if... ... \else ... \repeat| in addition to\lb
|\loop ... \if... ... \repeat|.
PLAIN's commands `^|\{|', `^|\}|', `^|\,|', `^|\>| and `^|\;|'
have been modified and can be used in horizontal mode
as well as in math mode.
Moreover you can use ^|\Mit||{...}| to produce `math italic' and
^|\Cal||{...}| to produce `caligraphic' text.
Both commands can be used inside and outside math mode and |\Cal|
will automatically translate its argument to upper case.
Any input between ^|\comment| end ^|\endcomment| will be ignored,
i.e.\ treated as comment.
Note, however, that |\endcomment| must appear as the first
(nonblank) token of an input line.
The command ^|\boxit||{...}| puts its argument into a box.
The commands ^|\topsmash| and ^|\botsmash| are similar to ^|\smash|
but only the part above or below the baseline is `smashed'.
\subsec{Examples:}The input
\begintt
\line{\boxit{\boxit{\;$a\over b$\;}}\hfill
\boxit{\boxit{\vphantom{\;$a\over b$\;}}}\hfill
\boxit{\boxit{\hphantom{\;$a\over b$\;}}}}
\line{\boxit{\boxit{\rlap{\;$a\over b$\;}}}\hfill
\boxit{\boxit{\topsmash{\;$a\over b$\;}}}\hfill
\boxit{\boxit{\phantom{\;$a\over b$\;}}}\hfill
\boxit{\boxit{\botsmash{\;$a\over b$\;}}}\hfill
\boxit{\boxit{\smash{\;$a\over b$\;}}}\hfill
\boxit{\boxit{\llap{\;$a\over b$\;}}}}
\endtt
yields:
\line{\boxit{\boxit{\;$a\over b$\;}}\hfill
\boxit{\boxit{\vphantom{\;$a\over b$\;}}}\hfill
\boxit{\boxit{\hphantom{\;$a\over b$\;}}}}
\line{\boxit{\boxit{\rlap{\;$a\over b$\;}}}\hfill
\boxit{\boxit{\topsmash{\;$a\over b$\;}}}\hfill
\boxit{\boxit{\phantom{\;$a\over b$\;}}}\hfill
\boxit{\boxit{\botsmash{\;$a\over b$\;}}}\hfill
\boxit{\boxit{\smash{\;$a\over b$\;}}}\hfill
\boxit{\boxit{\llap{\;$a\over b$\;}}}}
The command ^|\lb| is equivalent to |\hfil\break| and can be used to
force a line break.\lb
The command ^|\endpage| is equivalent to |\par\vfil\eject| and can be
used to force a page break.\lb
If you use ^|\superendpage| instead of |\endpage| all pending footnotes
and insertions will be printed before the new page is started.
The command ^|\use| has already been mentioned, it puts its argument
into an |\hbox| (with macro expansion as usual) and discards this
box.\lb
The command ^|\eat| equally discards its argument but without any macro
expansion.\lb
The command ^|\glet| is an abbreviation for |\global\let| and is used
primarily to conserve space used for macros.
%*** end of file PMANTEXT ***
% \input pmanmath % mathematical expressions
%*** this is file PMANMATH as of 06.03.86 ***
\chap{Mathematical Expressions}
Let us once again use `|\qeq{\Eq1}|' to refer to equation
`|\Eq1|' defined earlier:
this time the result is `\qeq{\Eq1}'.
PLAIN's macros ^|\matrix|, ^|\pmatrix| and ^|\bordermatrix|
have been modified as follows:
If you use the commands ^|\matc| (default), ^|\matl| or ^|\matr|
matrix elements will be centered (as in PLAIN), left justified
or right justified respectively.
Moreover you can use ^|\mat| as an abbreviation for ^|\pmatrix|.
\subsec{Examples:}The sequence of commands
\begintt
$$\mat{\sin\lambda\cr1&\sin\lambda\cr0&1&\sin\lambda\cr}\eqn$$
\matl
$$\mat{\sin\lambda\cr1&\sin\lambda\cr0&1&\sin\lambda\cr}\eqn$$
\matr
$$\mat{\sin\lambda\cr1&\sin\lambda\cr0&1&\sin\lambda\cr}\eqn$$
\matc
$$\mat{\sin\lambda&1&0\cr&\sin\lambda&1\cr&&\sin\lambda\cr}\eqn$$
\endtt
yields
$$\mat{\sin\lambda\cr1&\sin\lambda\cr0&1&\sin\lambda\cr}\eqn$$
\matl
$$\mat{\sin\lambda\cr1&\sin\lambda\cr0&1&\sin\lambda\cr}\eqn$$
\matr
$$\mat{\sin\lambda\cr1&\sin\lambda\cr0&1&\sin\lambda\cr}\eqn$$
\matc
$$\mat{\sin\lambda&1&0\cr&\sin\lambda&1\cr&&\sin\lambda\cr}\eqn$$
The macros ^|\smallsum| and ^|\smallprod| give small summation
and product signs similar to PLAIN's ^|\smallint|.
These symbols are reduced in size if they appear in sub- or
superscripts.
There are additional `^{math accents}' and there are also the
corresponding symbols which can be used as superscripts.
The complete list is:\lb
^|\dot| and ^|\dotsymbol| for one dot,\lb
^|\dotii| (or ^|\ddot|) and ^|\dotiisymbol| for two dots,\lb
^|\dotiii| and ^|\dotiiisymbol| for three dots,\lb
^|\dotiv| and ^|\dotivsymbol| for four dots,\lb
^|\vec| and ^|\vecsymbol| for an arrow,\lb
^|\bar| and ^|\barsymbol| for a bar,\lb
^|\tilde| and ^|\tildesymbol| for a tilde and\lb
^|\hat| and ^|\hatsymbol| for a hat.
\subsec{Examples:}The input:
\begintt
$\dot x=\dotii x=\dotiii x=\dotiv x=
\vec x=\bar x=\tilde x=\hat x$ or
$ABC^\dotsymbol=ABC^\dotiisymbol=
ABC^\dotiiisymbol=ABC^\dotivsymbol$ or
$DEF^\vecsymbol=DEF^\barsymbol=
DEF^\tildesymbol=DEF^\hatsymbol$
\endtt
yields:\lb
$\dot x=\dotii x=\dotiii x=\dotiv x=
\vec x=\bar x=\tilde x=\hat x$ or
$ABC^\dotsymbol=ABC^\dotiisymbol=
ABC^\dotiiisymbol=ABC^\dotivsymbol$ or
$DEF^\vecsymbol=DEF^\barsymbol=
DEF^\tildesymbol=DEF^\hatsymbol$
\sect{Mathematical Statements}
You may want to use macros to typeset ^{mathematical statements}
such as definitions, theorems, propositions, {\dots} and
proofs.
The problem is that different people have different ideas
how to name these statements.
Moreover one author prefers to number each class of
statements independently whereas another one would like them
all to share one sequence of numbers.
Therefore you must use the command ^|\defstmt|
(\underbar{def}ine \underbar{st}ate\underbar{m}en\underbar{t})
to define macros for theorems etc.\ yourself according to
your preferences.
The syntax is\lb
|\defstmt{|\<macro>|}{|\<name>|}{|\<numbering>|} |.\lb
The command |\defstmt{Thm}{Theorem}{|\<numbering>|}| will
define a macro ^|\Thm| which can be used to state `Theorem's.
Any such `Theorem' starts with |\Thm|, followed by optional
text and by `:\vspace', and extends until the next statement or
^|\par| or ^{blank line} is encountered.
You may, however, use ^|\endgraf| to start a new paragraph
within a statement.
While you are inside such a statement the command
^|\label| will define a \<code~name> such that it represents
the number assigned to the statement.
The command ^|\Prf| can be used to generate a proof.
The only difference is that proofs have no numbers and that
they may appear in a different font.
The last argument \<numbering> of |\defstmt| determines how
this class of statements shall be numbered and must be one
of the following:
\bullitem `|aa|', `|ca|', `|cc|', `|sa|', `|sc|' or `|ss|'
where the first letter indicates whether the statements
shall be numbered throughout the whole paper (a),
per chapter (c) or per section (s).
The second letter indicates whether
these numbers shall be unique throughout the whole paper
(a), through each chapter, i.e.\ chapter numbers as prefix are
omitted, (c) or through each section, i.e.\ chapter and
section numbers are omitted, (s).
That means that the numbering options `|aa|', `|cc|' and
`|ss|' will yield numbers which look alike but which are
reset differently.
\bullitem `|=|' immediately followed by \<macro> of another
class of statements with which the new class shall share the
numbers.
\par\noindent Since the names of these statements are
supplied by the user there is no need to provide for
automatic switching between english and german text.
The following example demonstrates some of the possibilities.
The input:
\beginlines
|\defstmt{Def}{Definition}{ca}|
|\defstmt{Thm}{Theorem}{cc}|
|\defstmt{Lem}{Lemma}{=Thm}|
|\Def: \label\Df1 This is definition~\quote{\Df1}.|
|\Thm (very important)\label\Tm1 : Assume $X$ has the properties|
| \spointbegin $X$ is {\dots} and|
| \spoint $X$ is \dots|
|\endgraf\noindent Then \dots|
|\par Before we prove Theorem~\quote{\Tm1} we need|
|\Lem: \label\Lm1 This is a Lemma.|
|\Prf: According to Definition \quote{\Df1} all $X$ \dots|
|\Prf \rm of Theorem~\quote{\Tm1}:|
|Using Lemma~\quote{\Lm1} we can \dots|
|\par|
\endlines
yields:
\defstmt{Def}{Definition}{ca}
\defstmt{Thm}{Theorem}{cc}
\defstmt{Lem}{Lemma}{=Thm}
\Def: \label\Df1 This is definition~\quote{\Df1}.
\Thm (very important)\label\Tm1 : Assume $X$ has the properties
\spointbegin $X$ is {\dots} and
\spoint $X$ is \dots
\endgraf\noindent Then \dots
\par Before we prove Theorem~\quote{\Tm1} we need
\Lem: \label\Lm1 This is a Lemma.
\Prf: According to Definition \quote{\Df1} all $X$ \dots
\Prf \rm of Theorem~\quote{\Tm1}:
Using Lemma~\quote{\Lm1} we can \dots
%*** end of file PMANMATH ***
% \input pmansel % selective printing and start macros
%*** this is file PMANSEL as of 10.03.86 ***
\chap{Selective Printing and Start Macros}
\sect{Selective Printing}
Sometimes you want to print just one or a few pages of a long paper,
e.g.\ because there have been some minor changes.\lb
The command ^|\pagesel||{|\<first>|}{|\<last>|}| will suppress the
printing of all pages with page numbers not in the range `first--last'.
You can use |\pagesel| more than once, but you should consider
that \TeX's page breaking mechanism is somewhat delayed.
Note, however, that |\pagesel| does not save any computing time.
Paragraphs will be broken into lines and lines will be assembled into
pages as usual.
\sect{Start Macros}
If you prepare a long paper you will usually want to process
smaller parts of it, one at a time.
This is always somewhat difficult but the following `start macros'
should help you:\lb
^|\startpage|\<number> for ^|\pageall| or\lb
^|\startpage|\<prefix>|.|\<number> for ^|\pagechap| sets the number
of the first page (as displayed on the LOG file),\lb
^|\startchap|\<number> sets the number for the next chapter,\lb
^|\startsect|\<number> sets the number for the next section,\lb
^|\startappendix||`|\<character> sets the character for the
next appendix,\lb
^|\startequ|\<number> sets the number for the next equation,\lb
^|\startfig|\<number> sets the number for the next figure,\lb
^|\starttab|\<number> sets the number for the next table,\lb
^|\startref|\<number> sets the number for the next reference and\lb
^|\startfoot|\<number> sets the number for the next footnote.
These start macros initialize various count registers, but you may
still have to initialize other internal variables (e.g.\ the prefix
for equation numbers) which is normally done by ^|\chap|, ^|\sect| or
^|\appendix|.
In order to do so use
\pointbegin ^|\sectinit| if you want to \underbar{continue} a section
within chapter~0,
\point ^|\chapinit| if you want to \underbar{continue} any chapter
except chapter~0, or
\point ^|\appinit| if you want to \underbar{continue} an appendix.
\sect{Save and Restore}
If you want to process only one part of your manuscript but at the
same time want to refer to equations, figures, tables and references
defined in earlier parts you should use ^|\save|~\<filename>\vspace.
{\TeX} maintains a list of all \<code~name>'s defined so far
(except the names of references defined by ^|\RF| which have not yet
been used).
In order to save storage space you can use the commands\lb
^|\kill|\<code~name> or |\kill{|\<code~name>|...|\<code~name>|}|\lb
to delete \<code~name>'s which are no longer needed;
they are removed from the list and the corresponding definitions
are discarded.
The command |\save| writes a sequence of commands to an external file
(with file type ^{TEXSAVE}) which can be used to restore all
definitions.
First there is a sequence of commands specifying options,
followed by start macros with appropriate arguments and macros which
restore the definitions of all \<code~name>'s on the list.
Note, however, that the counts for subequations,
((sub-)sub-)subsections and ((sub-)sub)points will
neither be saved nor restored.
To set up a job which starts at the point of the ^|\save|
command you should
\pointbegin respecify all private macro definitions
\point repeat all definitions of references by ^|\RF|
\point use the command ^|\restore|~\<filename>\vspace
\foot{Sometimes it will be necessary to increase the page numer by
The command |\startpage| should be followed by the page number of
that page on which the text immediately following the |\save|
command appears.}
\point start whith the input right after the |\save| command.
\par\noindent Finally if the text immediately after the |\save|
command (e.g.\ a new chapter) doesn't start on a new page
\point either start with the command ^|\vglue| (not |\vskip|)
followed by the right dimension (e.g.\ `5.3cm') or
insert commands to enforce a line and page break at the desired
point:\lb
^|\vadjust||{\endpage}\lb| for a page break in the middle of a paragraph
or\lb
^|\endpage| for a page break between paragraphs.
\sect{Forward References}
Usualy you can refer to a \<code~name> only after it has been defined
and a value is assigned to it (^{backward reference}s).
If you want to refer to something which is defined at a later point in
the manuscript (^{forward reference}) you can use the command
^|\crossrestore|~\<filename>{\vspace} (restore information for cross
references) just before the begin of the actual text of the
manuscript and the commands |\superendpage| and |\save| (with the
same \<filename>)
immediately before the command |\bye|.
If you process your manuscript for the first time you will get
an error message that the file for |\crossrestore| is missing and a
%*** user exits *** % called before
lot of \<code~name>'s will be undefined.
The next time, when the file for |\crossrestore| is present, all these
names will be defined in exactly the same way they were defined at
the end of the previous run.
There should be no more undefined \<code~name>'s unless they are
misspelled or are defined nowhere in the manuscript.
Clearly these definitions may not be accurate if you have meanwhile
modified the manuscript; in this case forward references will not be
accurate in the this run but backward references will allways be
correct.
\sect{User Exits}
There are a few ^{user exits} which can be used for special
applications.
All user exits are named ^|\...userexit| and any argument(s) are
contained in the token list register ^|\toks0|, ^|\toks2|, |...|~.
The following list contains all user exits presently defined together
with their default definition:
%*** the following lines are copied from PHYSTEXT ***
\beginttlines
%*** user exits *** % called before
\def\skipuserexit{\setbox0\box255 } % page is not printed
\def\shipuserexit{\unvbox255 } % page is printed
\def\chapuserexit{\sectuserexit} % chapter title
\def\appuserexit{\chapuserexit} % appendix title
\def\sectuserexit{\secsuserexit} % section title
\def\secsuserexit{\secssuserexit} % subsection title
\def\secssuserexit{\secsssuserexit} % subsubsection title
\let\secsssuserexit=\relax % subsubsubsection title
\endttlines
They are all called immediately before the title of the chapter,
appendix, section, {\dots} is printed.
At this point |\toks0| contains (macros which will expand to) the
number and |\toks2| contains the actual title.
For an appendix |\toks0| will in addition contain the word `Appendix'
or `Anhang' and |\toks2| may contain just `|\unskip|' if the appendix
has no title.
The following two examples show some details.
Assume you want to remove the final dot in the (sub-)section
number.
In order to do that you have to define |\secsssuserexit|
which will automatically be used for all higher exits up to
|\sectuserexit| and you must make sure that this macro is not used
for chapters and sections:
\begintt
\let\chapuserexit=\relax
\def\secsssuserexit{\expandafter\myuserexit\the\toks0 }
\def\myuserexit#1.{\toks0{#1}}
\endtt
Let us now consider a more complicated example.
Suppose you want to start each chapter and appendix on a new
page with two title lines in a huge font with 5mm extra space
between them and 20mm extra space below and above.
The first line shall contain the chapter or appendix number
and the second line the actual title.
Moreover the titles shall appear in the headline and a horizontal rule
should be placed below the headline.
You could, of course, write your own chapter and appendix
macros for this purpose, taking care of things like resetting
section numbers, possibly equation numbers ond so on.
This might, however, cause incompatibilities with future
changes of the PHYS macro package.
It is, therefore, strongly recommended to use the appropriate
user exits |\chapuserexit| and |\appuserexit| for this
purpose.
Below we give a sequence of commands which does all the required
things.
In order to understand them you have to know that immediately after
the user exits the title line is printed with the command\lb
|\ctrline{\titlestyle{\the\toks0\ \the\toks2}}|.\lb
The use of |\mark|'s is not quite necessary in a situation where
each chapter and appendix starts on a new page.
The code around the marks is, however, necessary if there are titles
with footnotes.
\beginttlines
\font\huge=ambx10 scaled\magstep3 % a huge font
\toppagenum\chappage\althead \chapstretch=5cm
\let\physskipheadline=\skipheadline % preserve old definition
\def\skipheadline#1{\glet\skipheadrule#1% skip head line rule
\physskipheadline#1} % if headline is skipped
\lheadtext={\firstmark} \rheadtext={\botmark}
\let\physmakeheadline=\makeheadline % preserve old definition
\def\makeheadline{\physmakeheadline % define new headline
\if F\skipheadrule \vbox to0mm{\vskip-8 mm\hrule
width \hsize \vss}\fi \nointerlineskip}
\skipheadline=F % initialize \skipheadrule
\def\titlestyle{\vadjust{\nobreak \vskip 5mm}\huge}
\def\chapuserexit{\vglue 20mm%
\expandafter\ifx\expandafter\unskip\the\toks2 \toks4=\toks0
\else
\toks4={\unskip\egroup\egroup\ctrline\bgroup\titlestyle\bgroup}%
\edef\next{\the\toks4 \the\toks2}\toks4=\toks2
\toks2=\expandafter{\next}\fi
\bgroup\def\footnote{\expandafter\eat\eat}%
\let\hfootnote=\footnote % allow footnotes
\let\foot=\eat \let\hfoot=\eat % in title
\mark\expandafter{\the\toks4}\egroup
\toks2=\expandafter{\the\toks2\vadjust{\vskip 15mm}}}
\endttlines
\indent\bpargroup The two exits |\skipuserexit| and |\shipuserexit|
are called by the output routine |\physoutput| when a page is skipped
(due to |\pagesel|) or is prepared for printing.
The index of this manual is printed in three columns by using these
two exits without any change in |\physoutput|.
%*** end of file PMANSEL ***
% \input pmanack % acknowledgements
%*** this is file PMANACK as of 06.03.86 ***
The authors have profited from many discussion with E. Belau,
G. Raffelt and W. Wiedenmann.
The present |\table| macro was originally designed by R. Schilling
and many improvements at various places are due to discussions with him.
Many macros descibed in this paper originate from macros for physics
papers written at SLAC\null,
some of them have been inspired by \AmSTeX.
%*** end of file PMANACK ***
% \input pmanopts % list of all options
%*** this is file PMANOPTS as of 06.03.86 ***
\appendix{List of all Options} ^^{options, list of all}
This appendix lists all the options you can use with the
PHYSE or PHYS formats.
The default option is underlined unless otherwise indicated.
The commands |\english| (default for PHYSE) or |\german| (default
for PHYS) indicate that certain headings should be in english or
german language (e.g.\ `Abstract' or `Zusammenfassung').
You should choose \utt|\titlepage| or |\notitlepage| if the title of
the paper etc.\ do or don't appear on a separate page which is
terminated with |\endpage|.
You can choose \utt|\botpagenum|, |\toppagenum| or |\nopagenum|
to get page numbers printed at the bottom of each page,
at the top of each page or to get no page numbers.
In any case there will be no page number on the title page.
You can choose \utt|\pageall| or |\pagechap| to get
pages numbered throughout the paper or numbered separately for each
chapter and appendix.
The commands \utt|\portrait| and |\landscape| will switch between
portrait and landscape format.
In the later case the page numbers will have
the number of the chapter or the letter of the appendix as prefix.
\utt|\figpage| and |\nofigpage| indicate that the
figure captions (if any) should or should not appear on one or
several separate pages.
The use of |\pagechap| forces them on separate pages in any case.
The analogous commands \utt|\tabpage|, |\notabpage|,
\utt|\refpage|, |\norefpage| and \utt|\footpage|, |\nofootpage|
do exactly the same for the table captions, the list of references
and (if applicable) the list of footnotes.
You should use \utt|\chapters| or |\nochapters| if your
paper does or does not contain chapters.
Depending on other options this may influence the numbering of pages,
equations, \dots\ .
You should use \utt|\arabicchapnum| or |\romanchapnum| if you want
the chapter numbers printed as arabic numbers or as (uppercase)
roman numerals.
You should use |\chappage| or \utt|\nochappage| if each chapter
and appendix should or should not start on a new page.
You can choose among |\equall|, \utt|\equchap| and
|\equsect| if the equations should be numbered throughout the
paper, for each chapter and appendix or for each section and appendix.
Use |\equleft|, \utt|\equright|, or |\equnone| if the equation numbers
should appear on the left side of the page, on the right side of
the page, or should not be printed at all.
You can choose |\equfull| or \utt|\equshort|
to indicate that |\queq| should
quote equation numbers in full or in abbreviated form (unless there is
an explicit |\fulltag| or |\shorttag|).
Use |\storebox|, \utt|\storelist| or |\storefile| if the
figure captions, table captions, references and (possibly) footnotes
shall be stored in boxes, as lists of macro definitions or on
external files.
Use \utt|\figall|, |\figchap| or |\figsect| if the figures should
be numbered throughout the paper, for each chapter and appendix or
for each section and appendix.
Use \utt|\taball|, |\tabchap| or |\tabsect| if the tables should
be numbered throughout the paper, for each chapter and appendix or
for each section and appendix.
Use \utt|\refsup| or |\refsqb| if quotations to references
should appear as superscripts or enclosed in square brackets.
Use \utt|\yearpage| or |\pageyear| if references generated
by the macros for physics journals should appear in the form
`journal {\bf volume} (year) page' or
`journal {\bf volume}, page (year)'.
Use \utt|\footbot| or |\footend| if `footnotes' should appear at
the bottom of the page or at the end of the paper.
Use \utt|\footsqb| or |\footpar| if you want footnote
numbers enclosed in square brackets or followed by a parenthesis.
This applies only to footnote numbers generated by |\foot|,
not to the symbols which are given to |\footnote| as argument.
%*** end of file PMANOPTS ***
% \input pmanupdt % updates and corrections ...
%*** this is file PMANUPDT as of 06.03.86 ***
\appendix{Updates and Corrections to PHYS/PHYSE}
\titcon{and Macro Libraries}
\secs{Updates and Corrections to PHYS/PHYSE}
The file PHYSUPDT TEX will contain ^{updates and corrections} of
errors which are not yet implemented in the PHYS/PHYSE format.
Therefore your {\TeX} input should start with the command
|\input physupdt| in order to get all known errors corrected.
In most cases you will, however, use a macro library and
it is most convenient to put this command into the macro library.
\secs{Private and Public Macro Libraries}
It is recommended to organize ^{macro libraries} in a hierarchical
fashion:
\dashitem one public macro library which contains macros useful for
all users at a computer or an institute.
This library should start with the command |\input|~^|physupdt|.
\dashitem one semi-public macro library for each larger group
of users which should start with a command that reads the
public macro library.
\dashitem one private macro library for one user (or for several
users working closely together) which should start with an
|\input| command for the appropriate semi-public library.
\secs{Macro Libraries at MPP}
At present we use the following public and semi-public macro
libraries:
\secss{The File MPPMAC} ^^|mppmac|
This library starts with |\input|~|physupdt| and contains macros
which should be useful for everybody at the Max-Plack-Institut f\"ur
Physik.\lb
^|\mppnum| to generate an MPP preprint or report number and\lb
^|\mppaddress| to generate the MPP address on the title page\lb
are described elsewhere in this manual and are needed in order
to produce a copy of this manual from the {\TeX} source.
In addition there is a command\lb
^|\letter||{|\<name>|}{|\<phone>|}{|\<address>|}|\lb
which will produce an MPP letter head with your \<name> and
\<phone> and the \<address> of the recipient.
As usual different lines in this address are separated by |\\|.
There are actually two such commands, |\letterL| for output
on a LasergrafiX and |\letterC| for output on a Canon laser printer,
because none of the large fonts is available for both devices.
|\letter| is just a synonym for |\letterL|.
\secss{The File CELMAC} ^^|celmac|
This library starts with |\input|~|mppmac| and contains additional
macros useful for the CELLO group at MPP\null.
If you use this library the following additional macros are defined:\lb
^|\Znull|, ^|\Wplus|, ^|\Wminus|, ^|\Wpm|, etc..
\secss{The File THEMAC} ^^|themac|
This library starts with |\input|~|mppmac| and contains additional
macros useful for the THEORY group at MPP\null.
If you use this library the following additional macros are defined:\lb
^|\pthnum||{|\dots|}| instead of |\mppnum{PTh |\dots|}| and\lb
^|\pthdate| instead of and |\pubdate|.
The following additional macros for physics journals are defined in
this file:
^^|\AP|^^|\CMP|^^|\JMP|^^|\PRep|^^|\RMP|^^|\TMF|
%*** the following lines are copied from THEMAC ***
\beginttlines
\def\AP{\journal{Ann.\ \Phys}}
\def\CMP{\journal{Commun.\ \Math\Phys}}
\def\JMP{\journal{J.\ \Math\Phys}}
\def\PRep{\journal{\Phys Rep.\ }}
\def\RMP{\journal{\Rev Mod.\ \Phys}}
\def\TMF{\journal{Teor.\ Mat.\ Fiz.\ }}
\endttlines
%*** end of file PMANUPDT ***
% \input pmanmacs % macro expansions, arguments, ...
%*** this is file PMANMAC as of 06.03.86 ***
\appendix{Macro Expansions, Arguments and Category Codes}
In this appendix we have to treat some sublteties which may become
important to someone designing somewhat more complicated macros.
Most users should skip this appendix, at least when reading this
manual for the first time.
It was said earlier that code names may consist of letters,
digits and apostrophes whereas usually {\TeX}'s control word
names consist of letters only.
The way this can be done is by temporarily declaring the
digits and the apostrophe to be letters while the code name
is read.
Since {\TeX} decides which characters are letters when they
are first read from the input file it is important that
e.g.\ the argument `|\Author81|' of |\quref{\Author81}| is
read by the macro |\quref| which temporarily causes the
digits |8| and |1| to behave as letters.
Things will clearly go wrong if you use something like\lb
|\def\xxx#1{#1}|\dots|\xxx{|\dots|\quref{\Author81}|\dots|}|\lb
because then `|\Author81|' is read as part of |\xxx|'s
argument as control word `|\Author|' (probably undefined)
followed by the digits `|81|'.
(Compare Chapter~7: How {\TeX} Reads What You Type,
Chapter~20: Definitions (also called Macros), and
Appendix~D: Dirty Tricks of the {\TeX}book\quref{\texbook}
for more details.)
Consider the macro definition |\def\line{\hbox to\hsize}|.
After expanding and processing the macro |\line|, which has
no argument, {\TeX} continues to read input characters and
expand macros and expects to find a left brace (either an
explicit one (|{|) or an implicit one (|\bgroup|)) which
starts a new level of grouping.
{\TeX} continues to read and expand input until eventually a matching
right brace is found at which point the horizontal list
built so far is put into an |\hbox| of width |\hsize|.
The input commands\lb
|\line{abc}| or |\line\bgroup abc\egroup| or\lb
|\def\xx{{abc}}\line\xx| or even things like\lb
|\line{abc\egroup| or |\def\xxx{\bgroup abc}\line\xxx}|\lb
would all give the same result.
The commands\lb
|\def\zzz{\egroup\line\bgroup}\line{abc\zzz def}|\lb
would even produce two lines.
The input\lb
|\def\yy{abc}\line\yy|\lb
would, however, be wrong and would lead to an error message.
Things are quite different with PLAIN's macro definition\lb
|\def\leftline#1{\line{#1\hss}}|\lb
because (with this definition) |\leftline| has one argument.
After reading the macro |\leftline| {\TeX} reads its
argument (without any macro expansion) and will subsequently
substitute this argument whenever there is a |#1| in the
replacement text.
Braces around a complex argument must be explicit and do not
provide a new level of grouping.
The input commands\lb
|\leftline{abc}| or |\def\yy{abc}\leftline\yy|\lb
would, therefore, give the same result.
The input\lb
|\leftline\bgroup abc\egroup|\lb
would, however, be wrong (the argument would be `|\bgroup|')
and would produce a quite different result.
We are here mostly concerned with code names.
The construction\lb
|\line{|\dots|\quref{\Author81}|\dots|}|\lb
works fine because |\Author81| will be read after expanding
the macro |\quref| as usual.
The construction\lb
|\leftline{|\dots|\quref{\Author81}|\dots|}|\lb
(with PLAIN's definition of |\leftline|) would however fail,
because |\Author81| is read ahead of time as part of the
argument for |\leftline|.
It is exactly for this reason that the macros ^|\leftline|,
^|\rightline|, ^|\centerline|, ^|\rlap| and ^|\llap| have been
redefined in PHYS such that the above construction does what
it is assumed to do.
The original definitions, which are slightly faster, are
still available under the names ^|\plainleftline|,
^|\plainrightline|, ^|\plaincenterline|, ^|\plainrlap| and
^|\plainllap|.
%*** end of file PMANMAC ***
% \input pmanold % compatibility with the older version (0.95) ...
%*** this is file PMANOLD as of 06.03.86 ***
\appendix{Compatibility with the older Version (0.95) of PHYS}
The present version 1.0 of the PHYS/PHYSE format is not entirely
compatible with the previous one (0.95).
The main incompatibilities are:
\pointbegin the option ^|\equold| is no longer supported
\point the ^|\table| macro
\par\noindent
You can, however, still use the old (0.8) form of equation numbers
if you use the command |\input|~^|equold| instead of the option
|\equold|.
The new |\table| macro is based on the example on page 247
(Chapter~22: Alignment) of the {\TeX}book \quref{\texbook}
whereas the old macro was based on the example on page 392
(Appendix~D: Dirty Tricks).
The new macro is more flexible but sometimes you may want
to still use the old one.
In order to do so you can use the command |\input|~^|oldtabl|
to read the old macro definition.
Once this is done you can use ^|\oldtable| (default after
|\input|~|oldtabl|) or ^|\newtable| to indicate that |\table| shall
be the old or the new table macro.
The syntax of the old |\table| macro is\lb
|\table|\<box~specification>|{|\<alignment~material>|}|\lb
with the following restrictions:
\pointbegin The alignment preamble must terminate with |\cr|,
not with |\crcr|, and the table must contain at least one row
of aligned items.
\point The last row of the table must contain the maximal number of
columns (you can add empty entries if necessary)
\point Every row of the table should contain a |\strut|
to ensure the correct vertical spacing.
It is in fact advisable to have a strut in each table entry in order
to avoid `underfull hbox'es.
\point The alignment material should not contain |\noalign|.
All horizontal rules should be produced with |\tabrule|
right after the corresponding |\cr|.
\point The vertical rules are put into the middle of the tabskip glue
and the parts of the tabskip glue to the left of the leftmost rule
and to the right of the rightmost rule are cut off.
If the initial tabskip is zero (default) |\table| inserts its own
value (24.4pt plus 24pt minus 12pt, .4pt are for the width of the
vrule).
You can modify the value of tabskip in the alignment preamble,
but you should know exactly what you are doing.
Irrespective of your modifications |\table| will use the same
tabskip value after the last column as before the first column.
\point If you want to omit a vertical rule use |\omitrule| in the
alignment preamble, either immediately after the `|{|' or
immediately before an `|&|' or the `|\cr|'.
%*** end of file PMANOLD ***
\nofigpage\figout % print figure captions on same page
\notabpage\tabout % print table captions on same page
\norefpage\refout % print references on same page
\nofootpage\footout % print footnotes on same page (\footbot)
\startindex %make the index
\triplecolumn\tenpoint
\makeindex
\singlecolumn
\endpage\startpage-3\singlespace
\tocpage\tocout % print table of contents on new page
\bye % end of the TEX job
%*** end of file PMANUAL ***